[SERVER-34070] Add flag to perform replication recovery as a standalone Created: 22/Mar/18 Updated: 29/Oct/23 Resolved: 23/Apr/18 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | None |
| Fix Version/s: | 3.7.6 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Spencer Brody (Inactive) | Assignee: | Judah Schvimer |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | rollback-non-functional | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||||||
| Sprint: | Repl 2018-04-09, Repl 2018-04-23, Repl 2018-05-07 | ||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||
| Description |
|
Ideally, node would also go read-only when this flag is set. |
| Comments |
| Comment by Githook User [ 23/Apr/18 ] |
|
Author: {'email': 'judah@mongodb.com', 'username': 'judahschvimer', 'name': 'Judah Schvimer'}Message: |
| Comment by Githook User [ 23/Apr/18 ] |
|
Author: {'email': 'judah@mongodb.com', 'username': 'judahschvimer', 'name': 'Judah Schvimer'}Message: |
| Comment by Githook User [ 18/Apr/18 ] |
|
Author: {'name': 'Judah Schvimer', 'username': 'judahschvimer', 'email': 'judah@mongodb.com'}Message: |
| Comment by Spencer Brody (Inactive) [ 27/Mar/18 ] |
|
In the worst case we could probably make all writes fail with a "NotMaster" error pretty easily with a small change to the ReplicationCoordinator. |
| Comment by Daniel Gottlieb (Inactive) [ 27/Mar/18 ] |
|
I don't think this would work with a "true" read-only mode. Read-only mode has two parts, one is a flag that's passed to WT on wiredtiger_open and the other is a flag kept in MongoDB memory. Clearly the WT flag cannot be passed, which is unfortunate. WiredTiger has less surface area to guard against writes. It may be possible to set the MongoDB flag after replication recovery is done which does cover must of the user-initiated writes (at least as of 3.4 when it was introduced). |