TopologyCoordinator fails to select a sync source when Replica Set has no primaries

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Works as Designed
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Replication
    • None
    • Replication
    • ALL
    • Hide
      1. N0, N1, N2 all in replica set stead state, N0 is primary
      2. N1, N2 have priority set to 0, making them ineligible to be primary
      3. N0 is restarted with write ops in flight
      4. after truncating its oplog, N0 is behind N1 and N2 and needs to sync before it can be primary
      5. because of this bug, no primary is ever elected
      Show
      N0, N1, N2 all in replica set stead state, N0 is primary N1, N2 have priority set to 0, making them ineligible to be primary N0 is restarted with write ops in flight after truncating its oplog, N0 is behind N1 and N2 and needs to sync before it can be primary because of this bug, no primary is ever elected
    • None
    • 3
    • TBD
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • 0

      When a replica set has no primary and N0 is behind other nodes in `lastApplied`, the topology coordinator fails to select a sync source even when chaining (no primary required) is allowed.

       

      This causes N0 to not be able to catch up, and therefore will never be eligible to be the set's primary. This can lead to an entire cluster being unable to elect a primary even with the configuration allowing for it.

            Assignee:
            Unassigned
            Reporter:
            Myles Hathcock
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: