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

Stopping dropping snapshots after safe reconfig that does not change writeConcernMajorityJournalDefault

    XMLWordPrintableJSON

Details

    • Fully Compatible
    • v4.4
    • Repl 2020-05-04

    Description

      After a reconfig, we drop snapshots, since the definition of majority-committed can change. However, all this does is set _currentCommittedSnapshot to none. It does not change the
      _lastCommittedOpTimeAndWallTime in the TopologyCoordinator. This means that the next time we set _currentCommittedSnapshot, either due to the JournalFlusher or replSetUpdatePosition, we will refuse to set _lastCommittedOpTimeAndWallTime backward, so _currentCommittedSnapshot can be set to its previous value from before the reconfig. This means that dropping snapshots after reconfig doesn’t accomplish anything.

      The safe reconfig protocol guarantees that operations committed in the old config will never roll back, so we can stop dropping snapshots after a safe reconfig that does not change writeConcernMajorityJournalDefault.

      Attachments

        Activity

          People

            siyuan.zhou@mongodb.com Siyuan Zhou
            tess.avitabile@mongodb.com Tess Avitabile (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: