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

Election cannot be canceled when writing its last vote

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.7.0
    • Affects Version/s: None
    • Component/s: Replication
    • Labels:
      None
    • Fully Compatible
    • ALL
    • Repl 2020-06-29, Repl 2020-07-13, Repl 2020-07-27
    • 23

      Election cancelation calls VoterRequester::cancel() to stop the running election. However, when the node has finished election dry run and is writing the last vote, calling cancel() on the dry run VoterRequester won't stop the real election since real election resets the VoterRequester.

      We could have the real run to check the result of the previous VoteRequester, but election handoff skips the dry run, so canceling the election will invariant as in SERVER-46850. Using VoteRequester to store the cancelled state as in SERVER-48207 isn't reliable in that case. We need to represent the canceled state at a higher level.

            Assignee:
            jason.chan@mongodb.com Jason Chan
            Reporter:
            siyuan.zhou@mongodb.com Siyuan Zhou
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: