Package org.hibernate.search.batchindexing
package org.hibernate.search.batchindexing
-
ClassDescriptionMakes sure that several different BatchIndexingWorkspace(s) can be started concurrently, sharing the same batch-backend and IndexWriters.This runnable will prepare a pipeline for batch indexing of entities, managing the lifecycle of several ThreadPools.Component of batch-indexing pipeline, using chained producer-consumers.Helper class to create threads; these threads are grouped and named to be identified in a profiler.A handler for rejected tasks that will have the caller block until space is available.This Runnable is consuming entity identifiers and producing loaded detached entities for the next queue.This Runnable is going to feed the indexing queue with the identifiers of all the entities going to be indexed.As a MassIndexer can take some time to finish it's job, a MassIndexerProgressMonitor can be defined in the configuration property hibernate.search.worker.indexing.monitor implementing this interface to track indexing performance.Wrap the subsequent Runnable in a JTA Transaction if necessary: - if the existing Hibernate Core transaction strategy requires a TransactionManager - if no JTA transaction is already started Unfortunately at this time we need to have access to SessionFactoryImplementorImplements a blocking queue capable of storing a "poison" token to signal consumer threads that the task is finished.