public class DisableTableProcedure extends AbstractStateMachineTableProcedure<DisableTableState>
TableProcedureInterface.TableOperationType
Constructor and Description |
---|
DisableTableProcedure() |
DisableTableProcedure(MasterProcedureEnv env,
TableName tableName,
boolean skipTableStateCheck)
Constructor
|
DisableTableProcedure(MasterProcedureEnv env,
TableName tableName,
boolean skipTableStateCheck,
ProcedurePrepareLatch syncLatch)
Constructor
|
Modifier and Type | Method and Description |
---|---|
protected void |
deserializeStateData(ProcedureStateSerializer serializer) |
protected Flow |
executeFromState(MasterProcedureEnv env,
DisableTableState state) |
protected DisableTableState |
getInitialState() |
protected DisableTableState |
getState(int stateId) |
protected int |
getStateId(DisableTableState state) |
TableName |
getTableName() |
TableProcedureInterface.TableOperationType |
getTableOperationType()
Given an operation type we can take decisions about what to do with pending operations.
|
protected boolean |
isRollbackSupported(DisableTableState state) |
protected void |
postDisable(MasterProcedureEnv env,
DisableTableState state)
Action after disabling table.
|
protected void |
preDisable(MasterProcedureEnv env,
DisableTableState state)
Action before disabling table.
|
protected void |
rollbackState(MasterProcedureEnv env,
DisableTableState state) |
protected void |
serializeStateData(ProcedureStateSerializer serializer) |
protected static void |
setTableStateToDisabled(MasterProcedureEnv env,
TableName tableName)
Mark table state to Disabled
|
protected static void |
setTableStateToDisabling(MasterProcedureEnv env,
TableName tableName)
Mark table state to Disabling
|
acquireLock, checkOnline, checkTableModifiable, getRegionDir, getUser, preflightChecks, releaseLock, releaseSyncLatch, setUser, toStringClassDetails
public DisableTableProcedure()
public DisableTableProcedure(MasterProcedureEnv env, TableName tableName, boolean skipTableStateCheck) throws HBaseIOException
env
- MasterProcedureEnvtableName
- the table to operate onskipTableStateCheck
- whether to check table stateHBaseIOException
public DisableTableProcedure(MasterProcedureEnv env, TableName tableName, boolean skipTableStateCheck, ProcedurePrepareLatch syncLatch) throws HBaseIOException
env
- MasterProcedureEnvtableName
- the table to operate onskipTableStateCheck
- whether to check table stateHBaseIOException
protected Flow executeFromState(MasterProcedureEnv env, DisableTableState state) throws java.lang.InterruptedException
java.lang.InterruptedException
protected void rollbackState(MasterProcedureEnv env, DisableTableState state) throws java.io.IOException
java.io.IOException
protected boolean isRollbackSupported(DisableTableState state)
protected DisableTableState getState(int stateId)
protected int getStateId(DisableTableState state)
protected DisableTableState getInitialState()
protected void serializeStateData(ProcedureStateSerializer serializer) throws java.io.IOException
java.io.IOException
protected void deserializeStateData(ProcedureStateSerializer serializer) throws java.io.IOException
java.io.IOException
public TableName getTableName()
getTableName
in interface TableProcedureInterface
getTableName
in class AbstractStateMachineTableProcedure<DisableTableState>
public TableProcedureInterface.TableOperationType getTableOperationType()
TableProcedureInterface
getTableOperationType
in interface TableProcedureInterface
getTableOperationType
in class AbstractStateMachineTableProcedure<DisableTableState>
protected void preDisable(MasterProcedureEnv env, DisableTableState state) throws java.io.IOException, java.lang.InterruptedException
env
- MasterProcedureEnvstate
- the procedure statejava.io.IOException
java.lang.InterruptedException
protected static void setTableStateToDisabling(MasterProcedureEnv env, TableName tableName) throws java.io.IOException
env
- MasterProcedureEnvjava.io.IOException
protected static void setTableStateToDisabled(MasterProcedureEnv env, TableName tableName) throws java.io.IOException
env
- MasterProcedureEnvjava.io.IOException
protected void postDisable(MasterProcedureEnv env, DisableTableState state) throws java.io.IOException, java.lang.InterruptedException
env
- MasterProcedureEnvstate
- the procedure statejava.io.IOException
java.lang.InterruptedException