public abstract class AbstractAtomicUpdateTask<T> extends AbstractResourceManagerTask<T>
AbstractTask.DelegateTask<T>, AbstractTask.InnerReadWriteTxServiceCallable<T>, AbstractTask.InnerWriteServiceCallable<T>, AbstractTask.ResubmitException
DEBUG, INFO, log, resourceManager
checkpointNanoTime, concurrencyManager, isReadWriteTx, nanoTime_assignedWorker, nanoTime_beginWork, nanoTime_finishedWork, nanoTime_submitTask, readOnly, taskCounters, timestamp, transactionManager, tx
Constructor and Description |
---|
AbstractAtomicUpdateTask(ResourceManager resourceManager,
long timestamp,
String resource) |
AbstractAtomicUpdateTask(ResourceManager resourceManager,
long timestamp,
String[] resource) |
Modifier and Type | Method and Description |
---|---|
protected void |
assertSameIndex(UUID expectedIndexUUID,
BTree view)
Verifies that the view is a view of the expected scale-out index.
|
toString
assertResource, assertRunning, assertUnisolated, call, clearLoggingContext, doTask, dropIndex, getCommitTime, getIndex, getJournal, getOnlyResource, getResource, getResourceManager, getTaskCounters, getTaskName, getTimestamp, isResource, registerIndex, setupLoggingContext, toString
public AbstractAtomicUpdateTask(ResourceManager resourceManager, long timestamp, String[] resource)
resourceManager
- timestamp
- resource
- public AbstractAtomicUpdateTask(ResourceManager resourceManager, long timestamp, String resource)
resourceManager
- timestamp
- resource
- indexUUID
- The UUID
associated with the scale-out index.protected void assertSameIndex(UUID expectedIndexUUID, BTree view)
This is used to detect drop/add sequences where a scale-out index exists
with the same name but a different index UUID
. Atomic update
tasks check for this and disallow the update in order to prevent
incorporation of the old index state into the new index.
expectedIndexUUID
- The expected index UUID.view
- BTree
whose view will be re-defined (must be part of
the same scale-out index).IllegalStateException
- if the index UUID
does not agree.
FIXME make sure that everyone tests this.Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.