@InterfaceAudience.Private public abstract class ModifyPeerProcedure extends AbstractPeerProcedure<org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.PeerModificationState>
StateMachineProcedure.FlowProcedure.LockStatePeerProcedureInterface.PeerOperationTypelatch, SLEEP_INTERVAL_MS, UPDATE_LAST_SEQ_ID_BATCH_SIZEpeerIdstateCountNO_PROC_ID, NO_TIMEOUT| Modifier | Constructor and Description |
|---|---|
protected |
ModifyPeerProcedure() |
protected |
ModifyPeerProcedure(String peerId) |
acquireLock, enablePeer, getLatch, holdLock, refreshPeer, releaseLock, setLastPushedSequenceId, setLastPushedSequenceIdForTabledeserializeStateData, getPeerId, resetRetry, rollbackState, serializeStateData, setTimeoutFailure, suspend, waitInitializedabort, addChildProcedure, execute, failIfAborted, getCurrentState, getCurrentStateId, getCycles, isEofState, isRollbackSupported, isYieldAfterExecutionStep, isYieldBeforeExecuteFromState, rollback, 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, 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, shouldWaitClientAck, skipPersistence, toString, toStringClass, toStringClassDetails, toStringDetails, toStringSimpleSB, updateMetricsOnFinish, updateMetricsOnSubmit, updateTimestamp, wasExecutedclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetPeerId, getPeerOperationTypeprotected ModifyPeerProcedure()
protected ModifyPeerProcedure(String peerId)
protected abstract void prePeerModification(MasterProcedureEnv env) throws IOException, ReplicationException, InterruptedException
If an IOException is thrown then we will give up and mark the procedure as failed directly. If all checks passes then the procedure can not be rolled back any more.
protected abstract void updatePeerStorage(MasterProcedureEnv env) throws ReplicationException
ReplicationExceptionprotected abstract void postPeerModification(MasterProcedureEnv env) throws IOException, ReplicationException
Notice that, since we have already done the actual work, throwing IOException here will
not fail this procedure, we will just ignore it and finish the procedure as suceeded. If
ReplicationException is thrown we will retry since this usually means we fails to
update the peer storage.
IOExceptionReplicationExceptionprotected void releaseLatch(MasterProcedureEnv env)
protected org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.PeerModificationState nextStateAfterRefresh()
protected boolean enablePeerBeforeFinish()
protected ReplicationPeerConfig getOldPeerConfig()
protected ReplicationPeerConfig getNewPeerConfig()
protected void updateLastPushedSequenceIdForSerialPeer(MasterProcedureEnv env) throws IOException, ReplicationException
IOExceptionReplicationExceptionprotected void reopenRegions(MasterProcedureEnv env) throws IOException
IOExceptionprotected StateMachineProcedure.Flow executeFromState(MasterProcedureEnv env, org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.PeerModificationState state) throws ProcedureSuspendedException, InterruptedException
protected org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.PeerModificationState getState(int stateId)
protected int getStateId(org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.PeerModificationState state)
protected org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.PeerModificationState getInitialState()
Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.