You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ozone.apache.org by "Glen Geng (Jira)" <ji...@apache.org> on 2021/04/30 08:13:00 UTC

[jira] [Created] (HDDS-5173) Divide snapshot related work into notifyInstallSnapshotFromLeader and reinitialize for SCMStateMachine.

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: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org