[hibernate-issues] [Hibernate-JIRA] Created: (HSEARCH-824) Run in parallel some of the engine initialization
Emmanuel Bernard (JIRA)
noreply at atlassian.com
Fri Jul 29 10:03:03 EDT 2011
Run in parallel some of the engine initialization
-------------------------------------------------
Key: HSEARCH-824
URL: http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-824
Project: Hibernate Search
Issue Type: Improvement
Reporter: Emmanuel Bernard
In IndexManagerHolder.buildEntityIndexBinding we currently synchronize. But the critical part is only between
indexManagersRegistry.get( providerName )
indexManagersRegistry.put( providerName, indexManager )
Even that does a lot of work.
We could parallelize the creation of EntityIndexBinder:
* synchronize this small piece described above
* move indexManager.initialize out of the sync block and be executed by ServiceFactoryBuilder#initDocumentBuilders (the caller of IndexManagerHolder.buildEntityIndexBinding)
* in ServiceFactoryBuilder#initDocumentBuilders run the various phases in parallel with a ExecutorService (ie build EntityindexBinder, initialize IndexManagers, build DocumentBuilder etc)
If class > 10 - number to refine, split the work.
This can be done by a community member but it's not a trivial task
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the hibernate-issues
mailing list