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

Set stable timestamp to end of each oplog batch during startup recovery for restore

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major - P3 Major - P3
    • 8.0 Required
    • None
    • None
    • Replication
    • ALL

    Description

      This came out of an investigation during SERVER-84706. Today, startup recovery for restore first sets the initial data timestamp to the sentinel so that we take unstable checkpoints. We also attempts to set the stable timestamp to Timestamp::min(). However, this is essentially a no-op, as we do not allow trying to reset the stable timestamp if it is null. In addition, it is not safe to set the stable timestamp backwards.

      After discussion within RSS, we determined that it should be equally performant and safe to set the stable timestamp during startup recovery for restore and take stable checkpoints. This would allow us to advance the stable timestamp alongside the oldest timestamp, preventing any future occurrences of SERVER-84706. We should do this to resolve this bug.

      Attachments

        Activity

          People

            backlog-server-repl Backlog - Replication Team
            xuerui.fa@mongodb.com Xuerui Fa
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated: