[hibernate-issues] [Hibernate-JIRA] Commented: (HSEARCH-221) Get Lucene Analyzer runtime (indexing)

Matthijs Bierman (JIRA) noreply at atlassian.com
Thu Jul 24 07:39:14 EDT 2008


    [ http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_30723 ] 

Matthijs Bierman commented on HSEARCH-221:
------------------------------------------

Another problem with the current Analyzer implementation seems that it recreates the Analyzer over and over again.
When the cost of constructing your Analyzer (like a synonym list in my case) is rather high this leads to Hibernate Search being unacceptably slow.

This solution should help with that. Of course other solutions like caching could also work (and might be simpler).

> Get Lucene Analyzer runtime (indexing)
> --------------------------------------
>
>                 Key: HSEARCH-221
>                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-221
>             Project: Hibernate Search
>          Issue Type: Improvement
>    Affects Versions: 3.0.1.GA
>            Reporter: Kenneth Christensen
>             Fix For: 3.1.0.Beta2
>
>         Attachments: AddLuceneWork.java, diff-jms.txt, diff.txt, DocumentBuilder.java, EntityInstanceAnalyzer.java, Flyer.java, Flyer.java, Flyer.java-JMS, hibernate-search-v2.zip, hibernate-search.zip, LuceneWorker.java, TestBean.java
>
>
> I'm writing a multi-language application and I have choose to use Hibernate Search.
> But it looks like Hibernate Search have some limitations in multi-language applications.
> I need to use the SnowballAnalyzer and create the instance at runtime because I only know the language at runtime.
> It really looks like Hibernate Search don't support runtime created analyzers for entity instances.
> I have extended Hibernate Search to support the above issue - maybe you could include the code in Hibernate Search or implement something similarly.
> I really need this feature/improvement :-)
> Please see attached files.
> Flyer - Entity used in test
> TestBean - SessionBean used in test
> org.hibernate.search.backend.impl.lucene.LuceneWorker - Added code to support entity instance analyzer, see performWork(AddLuceneWork work, DirectoryProvider provider) and add(Class entity, Serializable id, Document document, DirectoryProvider provider, Analyzer analyzer).
> org.hibernate.search.backend.AddLuceneWork - Added code to support analyzer.
> org.hibernate.search.engine.DocumentBuilder - Added code to support entity instance analyzer, see addWorkToQueue(Class entityClass, T entity, Serializable id, WorkType workType, List<LuceneWork> queue, SearchFactoryImplementor searchFactoryImplementor).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the hibernate-issues mailing list