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

Arbiters in pv1 should vote no in elections if they can see a healthy primary of equal or greater priority to the candidate

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 3.2.12, 3.4.2, 3.5.2
    • Affects Version/s: None
    • Component/s: Replication
    • Labels:
    • Fully Compatible
    • ALL
    • v3.4, v3.2
    • Repl 2017-01-23, Repl 2017-02-13

      Currently in pv1, the use of arbiters can result in unnecessary flapping during certain kinds of network partitions. Imagine a 3 node replica set with 2 data bearing members and 1 arbiter. If the data bearing members become isolated from each other, but the arbiter can see both, then whichever node is not primary will call for an election and win, the arbiter will transmit the term change to the old primary, which will step down, and then a few seconds later it will call for a new election, which it too shall win, on and on. You wind up with the primary changing every few seconds. Implementing this ticket will prevent that scenario, at the cost of slower failovers for all failovers when using arbiters.

            jack.mulrow@mongodb.com Jack Mulrow
            spencer@mongodb.com Spencer Brody (Inactive)
            0 Vote for this issue
            14 Start watching this issue