Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-29436

InitialSyncer doesn't need to update optimes of ReplicationCoordinator until it completes successfully

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Minor - P4 Minor - P4
    • None
    • Affects Version/s: None
    • Component/s: Replication
    • Replication

      Currently, the InitialSyncer updates the applied op time of the ReplicationCoordinator upon every successful batch application. It may be that this is unnecessary, since, during initial sync, the values of the applied and durable op times are not relevant for any other purpose. Only once initial sync completes successfully and we transition in to steady state replication do we really need to update a node's notion of applied op time.

      This change can be considered optional, but it could be a small simplification of the initial sync machinery, and be a way to reduce coupling between the InitialSyncer and the ReplicationCoordinator. This change would move the initial sync process more in the direction of being viewed an isolated state machine, that handles its own state and behaviors, independent of other replication machinery.

            backlog-server-repl [DO NOT USE] Backlog - Replication Team
            william.schultz@mongodb.com William Schultz
            0 Vote for this issue
            2 Start watching this issue