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

Clarify what lastApplied, lastDurable, etc. mean on primary and secondaries

    • Replication
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None

      The definitions in the architecture guide do not go into detail regarding no-holes, etc. for these definitions. For example:
      lastApplied: In-memory record of the latest applied oplog entry optime. On primaries, it may lag behind the optime of the newest oplog entry that is visible in the storage engine because it is updated after a storage transaction commits. On secondaries, lastApplied is only updated at the completion of an oplog batch

      The above definition doesn't make it clear what happens on the primary when there is an oplog hole. Is the lastAppliedOpTime allowed to advance past the oplog hole? (Yes)

      It is also worth spelling out the relationship between lastApplied and lastDurable, for example, lastDurable <= lastApplied, and why that's the case.

      I think it's OK to be more verbose here and would even recommend having examples.

            Assignee:
            backlog-server-repl [DO NOT USE] Backlog - Replication Team
            Reporter:
            vishnu.kaushik@mongodb.com Vishnu Kaushik
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: