SolrReindexImmediateHandler
class SolrReindexImmediateHandler extends SolrReindexBase (View source)
Invokes an immediate reindex
Internally batches of records will be invoked via shell tasks in the background
Methods
Begin an immediate re-index
Process index for a single SolrIndex instance
Get valid classes and options for an index with an optional filter
Process re-index for a given variant state and class
Process a single group.
Explicitly invoke the process that performs the group processing. Can be run either by a background task or a queuedjob.
Gets the datalist of records in the given group in the current state
Clear all records of the given class in the current state ONLY.
Trigger a solr-reindex
Details
runReindex(LoggerInterface $logger, int $batchSize, string $taskName, string|array|null $classes = null)
Begin an immediate re-index
protected
processIndex(LoggerInterface $logger, SolrIndex $indexInstance, int $batchSize, string $taskName, string $classes = null)
Process index for a single SolrIndex instance
protected array
getClassesForIndex(SolrIndex $index, string|array $filterClasses = null)
Get valid classes and options for an index with an optional filter
protected
processVariant(LoggerInterface $logger, SolrIndex $indexInstance, array $state, string $class, bool $includeSubclasses, int $batchSize, string $taskName)
Process re-index for a given variant state and class
protected
processGroup(LoggerInterface $logger, SolrIndex $indexInstance, array $state, string $class, int $groups, int $group, string $taskName)
Process a single group.
Without queuedjobs, it's necessary to shell this out to a background task as this is very memory intensive.
The sub-process will then invoke $processor->runGroup() in {\Solr_Reindex::doReindex}
runGroup(LoggerInterface $logger, SolrIndex $indexInstance, array $state, string $class, int $groups, int $group)
Explicitly invoke the process that performs the group processing. Can be run either by a background task or a queuedjob.
Does not commit changes to the index, so this must be controlled externally.
protected DataList
getRecordsInGroup(SolrIndex $indexInstance, string $class, int $groups, int $group)
Gets the datalist of records in the given group in the current state
Assumes that the desired variant state is in effect.
protected
clearRecords(SolrIndex $indexInstance, string $class, int $groups = null, int $group = null)
Clear all records of the given class in the current state ONLY.
Optionally delete from a given group (where the group is defined as the ID % total groups)
triggerReindex(LoggerInterface $logger, int $batchSize, string $taskName, string|array|null $classes = null)
Trigger a solr-reindex