@InterfaceAudience.Private public abstract class AbstractStateMachineTableProcedure<TState> extends StateMachineProcedure<MasterProcedureEnv,TState> implements TableProcedureInterface
StateMachineProcedure.FlowProcedure.LockStateTableProcedureInterface.TableOperationTypeNO_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 static void |
checkOnline(MasterProcedureEnv env,
RegionInfo ri)
Check region is online.
|
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 org.apache.hadoop.fs.Path |
getWALRegionDir(MasterProcedureEnv env,
RegionInfo region) |
protected void |
preflightChecks(MasterProcedureEnv env,
Boolean enabled)
Check that cluster is up and master is running.
|
protected void |
releaseLock(MasterProcedureEnv env) |
protected void |
releaseSyncLatch() |
protected void |
setUser(User user) |
void |
toStringClassDetails(StringBuilder sb) |
protected boolean |
waitInitialized(MasterProcedureEnv env) |
abort, addChildProcedure, deserializeStateData, execute, executeFromState, failIfAborted, getCurrentState, getCurrentStateId, getCycles, getInitialState, getState, getStateId, isRollbackSupported, isYieldAfterExecutionStep, isYieldBeforeExecuteFromState, rollback, rollbackState, serializeStateData, setNextState, toStringStateaddStackIndex, afterReplay, beforeReplay, bypass, compareTo, completionCleanup, doExecute, 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, isBypass, isFailed, isFinished, isInitializing, isLockedWhenLoading, isRunnable, isSuccess, isWaiting, removeStackIndex, setAbortFailure, setChildrenLatch, setFailure, setFailure, setLastUpdate, setNonceKey, setOwner, setOwner, setParentProcId, setProcId, setResult, setRootProcId, setStackIndexes, setState, setSubmittedTime, setTimeout, setTimeoutFailure, shouldWaitClientAck, skipPersistence, toString, toStringClass, toStringDetails, toStringSimpleSB, updateMetricsOnFinish, updateMetricsOnSubmit, updateTimestamp, wasExecutedprotected 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 TableProcedureInterfacepublic abstract TableProcedureInterface.TableOperationType getTableOperationType()
TableProcedureInterfacegetTableOperationType in interface TableProcedureInterfacepublic void toStringClassDetails(StringBuilder sb)
toStringClassDetails in class Procedure<MasterProcedureEnv>protected boolean waitInitialized(MasterProcedureEnv env)
waitInitialized 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 - MasterProcedureEnvIOExceptionprotected final org.apache.hadoop.fs.Path getWALRegionDir(MasterProcedureEnv env, RegionInfo region) throws IOException
IOExceptionprotected void preflightChecks(MasterProcedureEnv env, Boolean enabled) throws HBaseIOException
enabled, check table is enabled else check it is disabled.
Call in Procedure constructor so can pass any exception to caller.enabled - If true, check table is enabled and throw exception if not. If false, do the
inverse. If null, do no table checks.HBaseIOExceptionprotected static void checkOnline(MasterProcedureEnv env, RegionInfo ri) throws DoNotRetryRegionException
DoNotRetryRegionExceptionCopyright © 2007–2019 The Apache Software Foundation. All rights reserved.