Glen Geng created HDDS-5173:
-------------------------------
Summary: Divide snapshot related work into
notifyInstallSnapshotFromLeader and reinitialize for SCMStateMachine.
Key: HDDS-5173
URL: https://issues.apache.org/jira/browse/HDDS-5173
Project: Apache Ozone
Issue Type: Sub-task
Reporter: Glen Geng
As mentioned in https://issues.apache.org/jira/browse/RATIS-1370
During notifyInstallSnapshotFromLeader, StateMachineUpdater may call
applyTransactions when StateMachine is in PAUSED state.
Just divide snapshot related work into notifyInstallSnapshotFromLeader and
reinitialize for SCMStateMachine.
During notifyInstallSnapshotFromLeader, SCM just downloads snapshot but not
modify StateMachine, since StateMachineUpdater is in RUNNING state, may call
applyTransactions during this period.
During reinitialize, SCM can safely reload the StateMachine, such as rocksdb
and in-memory state. During this period, StateMachineUpdater is in RELOAD
state, thus there will be no contention between SCM and StateMachineUpdater.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]