@InterfaceAudience.Private public class SplitWALProcedure extends StateMachineProcedure<MasterProcedureEnv,MasterProcedureProtos.SplitWALState> implements ServerProcedureInterface
SplitWALRemoteProcedure to actually send the request to region
server to split this WAL.
It also check if the split wal task really succeed. If the WAL still exists, it will
schedule another region server to split this WAL.StateMachineProcedure.FlowProcedure.LockStateServerProcedureInterface.ServerOperationTypestateCountNO_PROC_ID, NO_TIMEOUT| Constructor and Description |
|---|
SplitWALProcedure() |
SplitWALProcedure(String walPath,
ServerName crashedServer) |
abort, addChildProcedure, execute, failIfAborted, getCurrentState, getCurrentStateId, getCycles, isEofState, isRollbackSupported, isYieldAfterExecutionStep, isYieldBeforeExecuteFromState, rollback, setNextState, toStringStateacquireLock, addStackIndex, 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, releaseLock, removeStackIndex, setAbortFailure, setChildrenLatch, setFailure, setFailure, setLastUpdate, setNonceKey, setOwner, setOwner, setParentProcId, setProcId, setResult, setRootProcId, setStackIndexes, setState, setSubmittedTime, setTimeout, shouldWaitClientAck, skipPersistence, toString, toStringClass, toStringClassDetails, toStringDetails, toStringSimpleSB, updateMetricsOnFinish, updateMetricsOnSubmit, updateTimestamp, waitInitialized, wasExecutedpublic SplitWALProcedure()
public SplitWALProcedure(String walPath, ServerName crashedServer)
protected StateMachineProcedure.Flow executeFromState(MasterProcedureEnv env, MasterProcedureProtos.SplitWALState state) throws ProcedureSuspendedException, ProcedureYieldException, InterruptedException
protected void rollbackState(MasterProcedureEnv env, MasterProcedureProtos.SplitWALState splitOneWalState) throws IOException, InterruptedException
rollbackState in class StateMachineProcedure<MasterProcedureEnv,MasterProcedureProtos.SplitWALState>IOExceptionInterruptedExceptionprotected MasterProcedureProtos.SplitWALState getState(int stateId)
getState in class StateMachineProcedure<MasterProcedureEnv,MasterProcedureProtos.SplitWALState>protected int getStateId(MasterProcedureProtos.SplitWALState state)
getStateId in class StateMachineProcedure<MasterProcedureEnv,MasterProcedureProtos.SplitWALState>protected MasterProcedureProtos.SplitWALState getInitialState()
getInitialState in class StateMachineProcedure<MasterProcedureEnv,MasterProcedureProtos.SplitWALState>protected void serializeStateData(ProcedureStateSerializer serializer) throws IOException
serializeStateData in class StateMachineProcedure<MasterProcedureEnv,MasterProcedureProtos.SplitWALState>IOExceptionprotected void deserializeStateData(ProcedureStateSerializer serializer) throws IOException
deserializeStateData in class StateMachineProcedure<MasterProcedureEnv,MasterProcedureProtos.SplitWALState>IOExceptionprotected boolean setTimeoutFailure(MasterProcedureEnv env)
setTimeoutFailure in class Procedure<MasterProcedureEnv>public String getWAL()
public ServerName getWorker()
public ServerName getServerName()
getServerName in interface ServerProcedureInterfacepublic boolean hasMetaTableRegion()
hasMetaTableRegion in interface ServerProcedureInterfacepublic ServerProcedureInterface.ServerOperationType getServerOperationType()
ServerProcedureInterfacegetServerOperationType in interface ServerProcedureInterfaceprotected void afterReplay(MasterProcedureEnv env)
afterReplay in class Procedure<MasterProcedureEnv>Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.