[SERVER-27154] replSetRequestVotes command should wait for durability Created: 22/Nov/16 Updated: 29/Jun/17 Resolved: 04/Jan/17 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | None |
| Fix Version/s: | 3.2.12, 3.4.2, 3.5.2 |
| Type: | Bug | Priority: | Critical - P2 |
| Reporter: | Mathias Stearn | Assignee: | Judah Schvimer |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||
| Operating System: | ALL | ||||||||||||||||||||
| Backport Requested: |
v3.4, v3.2
|
||||||||||||||||||||
| Sprint: | Repl 2017-01-23 | ||||||||||||||||||||
| Participants: | |||||||||||||||||||||
| Description |
|
The Raft protocol requires that votes are stored durably, but the replSetRequestVotes command doesn't wait for durability after recording the vote and before replying to the candidate. This can result in a vote being lost following a hard shutdown and possibly conflicting votes for different candidates for the same term. |
| Comments |
| Comment by Githook User [ 24/Jan/17 ] |
|
Author: {u'username': u'judahschvimer', u'name': u'Judah Schvimer', u'email': u'judah@mongodb.com'}Message: (cherry picked from commit 8378a0dfc2ddbf2043b923e8c25362a797a2c120) |
| Comment by Githook User [ 20/Jan/17 ] |
|
Author: {u'username': u'judahschvimer', u'name': u'Judah Schvimer', u'email': u'judah@mongodb.com'}Message: (cherry picked from commit 8378a0dfc2ddbf2043b923e8c25362a797a2c120) |
| Comment by Githook User [ 04/Jan/17 ] |
|
Author: {u'username': u'judahschvimer', u'name': u'Judah Schvimer', u'email': u'judah@mongodb.com'}Message: |