Temporary checkpoints represent old checkpoints that have been processed
but the cleanup was not successful of did not happen at all (like in the
event the system was forcibly stopped).
Pauses the background indexing process. Future changes are not indexed
until the resume() method is called.
The pause call will take effect on the next run cycle and will affect all
indexes marked as 'async'.
Note: this is experimental and should only be used for
debugging/diagnosis purposes!
abortAndPause
@Description("Aborts any running indexing cycle and pauses the indexer. Invoke \'resume\' once you are read to resume indexing again")
StringabortAndPause()
releaseLeaseForPausedLane
@Description("Release lease for a paused lane")
StringreleaseLeaseForPausedLane()
resume
voidresume()
Resumes the indexing process. All changes from the previous indexed state
will be indexed.
Returns the current reference checkpoint used by the async indexer
Returns:
the reference checkpoint
forceIndexLaneCatchup
@Description("Force update the indexing lane to a checkpoint created during execution of this function. This will abort and pause the running lane, release it\'s lease and set the reference checkpoint to a latest one.Any content changes between the old reference checkpoint and the new one will be not be indexed and a reindexing would be required.Only use this operation if you are sure that the lane is stuck and not updated since many days and cannot catch up on its own.Once this operation is completed, reindexing for all indexes on the lane is required.")
StringforceIndexLaneCatchup(@Name("Confirmation Message") @Description("Enter \'CONFIRM\' to confirm the operation")
String confirmationMessage)
throws CommitFailedException
Returns the processed checkpoint used by the async indexer. If this index
round finishes successfully, the processed checkpoint will become the
reference checkpoint, and the old reference checkpoint wil be released.
Temporary checkpoints represent old checkpoints that have been processed
but the cleanup was not successful of did not happen at all (like in the
event the system was forcibly stopped).
voidsplitIndexingTask(@Name("paths") @Description("Comma separated list of paths of the index definitions")
String paths,
@Name("newIndexTaskName") @Description("The indexing task name set on the async property")
String newIndexTaskName)
Splits the current indexing tasks into 2, indexes that are passed in as
an input will have their 'async' property updated to
newIndexTaskName.
Note that this call will *not* bootstrap a new indexing task for the
given name.
registerAsyncIndexer
voidregisterAsyncIndexer(@Name("name")
String name,
@Name("delayInSeconds")
long delayInSeconds)
Starts a new background indexing task and registers the JMX MBeans for it