[SERVER-22629] Default --enableMajorityReadConcern to true Created: 16/Feb/16 Updated: 06/Dec/22 Resolved: 12/Feb/18 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication, Storage |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Adam Midvidy | Assignee: | Backlog - Storage Execution Team |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Assigned Teams: |
Storage Execution
|
||||||||
| Participants: | |||||||||
| Description |
|
The SnapshotThread poses somewhat of a pathological use case for WiredTiger as it repeatedly seeks to the highest key in the oplog in the presence of concurrent inserts to the end of the tree. This operation is inherently unscalable as the seeking to the end of the RecordStore is not wait-free in the presence of concurrent inserts. We should run our full test suite with the SnapshotThread enabled to find any additional longevity/stability issues. |
| Comments |
| Comment by Eric Milkie [ 12/Feb/18 ] |
|
This was effectively done for the 3.6 release (but the way that majority read concern was implemented was changed to use timestamps instead of named snapshots). The performance characteristics were different from what Adam described for the original implementation. |
| Comment by Eric Sedor [ 21/Oct/16 ] |
|
Is it possible to get elaboration on the performance impact that the description of this ticket implies? |
| Comment by Martin Bligh [ 22/Feb/16 ] |
|
I'm saying I don't think we should default it to on for everybody, and that we shouldn't test it with a different setting than we run it with. |
| Comment by Eric Milkie [ 22/Feb/16 ] |
|
I don't see why we need to set up a separate test pass; we didn't do this the first time we defaulted it to on. |
| Comment by Martin Bligh [ 22/Feb/16 ] |
|
I think we want this set to how users are going to do it by default (ie currently off), so if we need this, it'd be a separate test pass. |