com.atlassian.confluence.search.lucene
Class MultiThreadedIndexRebuilder
java.lang.Object
com.atlassian.confluence.search.lucene.MultiThreadedIndexRebuilder
- All Implemented Interfaces:
- BatchIndexer
public class MultiThreadedIndexRebuilder
- extends Object
- implements BatchIndexer
Performs a rebuild the Confluence index using multithreaded approach.
The index is first rebuilt into a temporary location, with each thread writing to its own temporary file.
Once all workers have completed their respective indexing jobs, we merge all temporary file indexes together,
truncate/delete the main index and then merge and promote the temporary index to be the main search index.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MultiThreadedIndexRebuilder
public MultiThreadedIndexRebuilder()
reIndexAll
public void reIndexAll()
indexEntities
public void indexEntities(com.atlassian.core.util.ProgressMeter progress)
- Specified by:
indexEntities
in interface BatchIndexer
unIndexAll
public void unIndexAll()
- Specified by:
unIndexAll
in interface BatchIndexer
isReIndexRunning
public boolean isReIndexRunning()
getLastReindexingTask
public IndexingTask getLastReindexingTask()
setEventManager
public void setEventManager(EventManager eventManager)
setAnalyzerFactory
public void setAnalyzerFactory(LuceneAnalyzerFactory analyzerFactory)
setSearchableDao
public void setSearchableDao(SearchableDao searchableDao)
setBootstrapManager
public void setBootstrapManager(BootstrapManager bootstrapManager)
setLuceneConnection
public void setLuceneConnection(ILuceneConnection luceneConnection)
setIndexTaskFactory
public void setIndexTaskFactory(IndexTaskFactory indexTaskFactory)
setAnyTypeDao
public void setAnyTypeDao(AnyTypeDao anyTypeDao)
setTransactionManager
public void setTransactionManager(org.springframework.transaction.PlatformTransactionManager transactionManager)
setIndexManager
public void setIndexManager(ConfluenceIndexManager indexManager)