[SERVER-46085] Fail initial sync attempt if sync source is in initial sync Created: 11/Feb/20 Updated: 29/Oct/23 Resolved: 27/Mar/20 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | None |
| Fix Version/s: | 4.4.0-rc0, 4.7.0 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Tess Avitabile (Inactive) | Assignee: | Matthew Russotto |
| 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: | Repl 2020-03-23, Repl 2020-04-06 | ||||||||||||||||
| Participants: | |||||||||||||||||
| Description |
|
If the sync source is in the replica set config, but not in state PRIMARY or SECONDARY, we issue a retryable error, causing us to retry connecting until the node is in state PRIMARY or SECONDARY. This is a liveness issue if the sync source is in initial sync, since it could take a long time for the sync source to finish initial sync. It's also a correctness issue, since the sync source can be on a different branch of history when it completes its initial sync. We should fail the initial sync attempt if the sync source is in initial sync. |
| Comments |
| Comment by Githook User [ 27/Mar/20 ] |
|
Author: {'email': 'matthew.russotto@10gen.com', 'name': 'Matthew Russotto', 'username': 'mtrussotto'}Message: (cherry picked from commit b70908c4898c4b02d8c70df3f796fa3e8cfe5bdd) |
| Comment by Githook User [ 27/Mar/20 ] |
|
Author: {'email': 'matthew.russotto@10gen.com', 'name': 'Matthew Russotto', 'username': 'mtrussotto'}Message: |
| Comment by Judah Schvimer [ 11/Feb/20 ] |
|
We also need to check at the end of initial sync if an initial sync has happened on the sync source at any point during the initial sync. |