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

lastDurable optime should be updated after batch application on non-durable storage engines

    • Type: Icon: Bug Bug
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Replication
    • Replication
    • ALL
    • Repl 2018-07-30, Repl 2018-08-13, Repl 2018-08-27, Repl 2018-09-10
    • 17

      For secondary batch application, the ApplyBatchFinalizer is used to advance optimes after application of an oplog batch completes. We currently use the ApplyBatchFinalizerForJournal for durable storage engines and the ApplyBatchFinalizer for non-durable storage engines, which only updates the lastApplied optime. On primaries, for non-durable storage engines, the replication system keeps the lastDurable optime up to date wth the lastApplied optime, since the lastDurable optime has no functional meaning on a non-durable storage engine. It seems we should be keeping this behavior consistent between primaries and secondaries, so we should update the lastDurable optime on batch application on non-durable storage engines.

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