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

Arbiters should explicitly clear their durable optime

    XMLWordPrintable

Details

    • Bug
    • Status: Backlog
    • Major - P3
    • Resolution: Unresolved
    • None
    • None
    • None
    • ALL
    • v4.4, v4.2

    Description

      Right now when a node starts up or has a config change, if it is not an arbiter it reads its last optime from the top of the oplog. If it is an arbiter it does not, but it does not clear the last optime either. So if a node goes from being not an arbiter (i.e. REMOVED, which can happen due to network errors) to being an arbiter, and it happens to have an oplog (which an arbiter might if it was ever started as a primary or secondary), it will end up with an old and possibly invalid (e.g. missing term or wall time) value for lastDurableOpTime, which will remain until the next restart.

      Attachments

        Issue Links

          Activity

            People

              backlog-server-repl Backlog - Replication Team
              matthew.russotto@mongodb.com Matthew Russotto
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated: