@InterfaceAudience.Private public abstract class AbstractStateMachineTableProcedure<TState> extends StateMachineProcedure<MasterProcedureEnv,TState> implements TableProcedureInterface
StateMachineProcedure.Flow
Procedure.LockState
TableProcedureInterface.TableOperationType
NO_PROC_ID, NO_TIMEOUT
Modifier | Constructor and Description |
---|---|
protected |
AbstractStateMachineTableProcedure() |
protected |
AbstractStateMachineTableProcedure(MasterProcedureEnv env) |
protected |
AbstractStateMachineTableProcedure(MasterProcedureEnv env,
ProcedurePrepareLatch latch) |
Modifier and Type | Method and Description |
---|---|
protected Procedure.LockState |
acquireLock(MasterProcedureEnv env) |
protected void |
checkTableModifiable(MasterProcedureEnv env)
Check whether a table is modifiable - exists and either offline or online with config set
|
abstract TableName |
getTableName() |
abstract TableProcedureInterface.TableOperationType |
getTableOperationType()
Given an operation type we can take decisions about what to do with pending operations.
|
protected User |
getUser() |
protected void |
releaseLock(MasterProcedureEnv env) |
protected void |
releaseSyncLatch() |
protected void |
setUser(User user) |
void |
toStringClassDetails(StringBuilder sb) |
abort, addChildProcedure, deserializeStateData, execute, executeFromState, failIfAborted, getCurrentState, getCycles, getInitialState, getState, getStateId, isRollbackSupported, isYieldAfterExecutionStep, isYieldBeforeExecuteFromState, rollback, rollbackState, serializeStateData, setNextState, toStringState
addStackIndex, afterReplay, beforeReplay, compareTo, completionCleanup, doAcquireLock, doExecute, doReleaseLock, doRollback, elapsedTime, getChildrenLatch, getException, getLastUpdate, getNonceKey, getOwner, getParentProcId, getProcedureMetrics, getProcId, getProcIdHashCode, getProcName, getResult, getRootProcedureId, getRootProcId, getStackIndexes, getState, getSubmittedTime, getTimeout, getTimeoutTimestamp, hasChildren, hasException, hasLock, hasOwner, hasParent, hasTimeout, haveSameParent, holdLock, incChildrenLatch, isFailed, isFinished, isInitializing, isRunnable, isSuccess, isWaiting, removeStackIndex, setAbortFailure, setChildrenLatch, setFailure, setFailure, setLastUpdate, setNonceKey, setOwner, setOwner, setParentProcId, setProcId, setResult, setRootProcId, setStackIndexes, setState, setSubmittedTime, setTimeout, setTimeoutFailure, shouldWaitClientAck, toString, toStringClass, toStringDetails, toStringSimpleSB, updateMetricsOnFinish, updateMetricsOnSubmit, updateTimestamp, wasExecuted
protected AbstractStateMachineTableProcedure()
protected AbstractStateMachineTableProcedure(MasterProcedureEnv env)
protected AbstractStateMachineTableProcedure(MasterProcedureEnv env, ProcedurePrepareLatch latch)
env
- Uses this to set Procedure Owner at least.public abstract TableName getTableName()
getTableName
in interface TableProcedureInterface
public abstract TableProcedureInterface.TableOperationType getTableOperationType()
TableProcedureInterface
getTableOperationType
in interface TableProcedureInterface
public void toStringClassDetails(StringBuilder sb)
toStringClassDetails
in class Procedure<MasterProcedureEnv>
protected Procedure.LockState acquireLock(MasterProcedureEnv env)
acquireLock
in class Procedure<MasterProcedureEnv>
protected void releaseLock(MasterProcedureEnv env)
releaseLock
in class Procedure<MasterProcedureEnv>
protected User getUser()
protected void setUser(User user)
protected void releaseSyncLatch()
protected void checkTableModifiable(MasterProcedureEnv env) throws IOException
env
- MasterProcedureEnvIOException
Copyright © 2007–2017 The Apache Software Foundation. All rights reserved.