-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Replication
-
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.
- is duplicated by
-
SERVER-46850 Stepup due to election handoff may not have _voteRequester when it's candidate
- Closed
- is related to
-
SERVER-47612 Elections not robust in remove_newly_added_field_after_finishing_initial_sync.js
- Closed
-
SERVER-48257 Reject heartbeat reconfig when running for election
- Closed