[SERVER-47517] Secondaries will always try to vote irrespective of the commit quorum (on/off) value. Created: 13/Apr/20 Updated: 29/Oct/23 Resolved: 17/Apr/20 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Index Maintenance |
| Affects Version/s: | None |
| Fix Version/s: | 4.4.0-rc2, 4.7.0 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Gregory Wlodarek | Assignee: | Gregory Wlodarek |
| Resolution: | Fixed | 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: |
v4.4
|
||||||||||||||||||||
| Sprint: | Execution Team 2020-04-20, Execution Team 2020-05-04 | ||||||||||||||||||||
| Participants: | |||||||||||||||||||||
| Description |
|
This is going to be some follow-up work for This invariant holds for startup recovery and rollback recovery as we start from a point-in-time. But for initial sync, this invariant will not hold due to the nature of initial sync. To resolve this, we'll need to get the commitQuorum from the listIndexes command and persist it to disk before calling applyStartIndexBuild() to set up unfinished index builds during the collection cloning phase. |
| Comments |
| Comment by Githook User [ 17/Apr/20 ] |
|
Author: {'name': 'Gregory Wlodarek', 'email': 'gregory.wlodarek@mongodb.com', 'username': 'GWlodarek'}Message: (cherry picked from commit 5713af29cd78dd8322c25c8d0b13f78ed6de34ae) |
| Comment by Githook User [ 17/Apr/20 ] |
|
Author: {'name': 'Gregory Wlodarek', 'email': 'gregory.wlodarek@mongodb.com', 'username': 'GWlodarek'}Message: |
| Comment by Suganthi Mani [ 14/Apr/20 ] |
|
1) User collection, say, 'foo' which starts the 2 phase index build, gets cloned before 'config' collection cloning.
|
| Comment by Suganthi Mani [ 13/Apr/20 ] |
|
Another alternative approach to solve the server crash is that Main Idea: Node doesn't need to know the on-disk commit quorum value unless they are primary. |