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

rs.stepDown() should fail if slave is far behind and also allow 'force' option

    • Type: Icon: Improvement Improvement
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 1.9.0
    • Affects Version/s: 1.8.0
    • Component/s: None
    • Labels:

      When a user calls rs.stepDown():

      1. If then closest secondary is more than 10 seconds behind the primary, then the stepDown() should be automatically rejected. This is to prevent the situation where the secondary catches up and then the original primary is re-elected. (Many users have experienced this phenomenon, and it doesn't jibe with the idea of a stepDown().)

      2. If the stepDown() is rejected, the users should have the option for say rs.stepDown(

      {force: 1}

      ), which will stop writes to the primary, wait for the secondary to catch up, and then step down the primary so that the secondary does in fact become primary.

            kristina Kristina Chodorow (Inactive)
            kbanker Kyle Banker
            0 Vote for this issue
            2 Start watching this issue