[SERVER-31158] voting inMemory nodes should refuse to join replica sets that have writeConcernMajorityJournalDefault set to true Created: 19/Sep/17 Updated: 06/Dec/22 Resolved: 09/Apr/20 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication, Storage |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Eric Milkie | Assignee: | Backlog - Replication Team |
| Resolution: | Won't Fix | Votes: | 0 |
| Labels: | neweng | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Assigned Teams: |
Replication
|
||||||||||||
| Operating System: | ALL | ||||||||||||
| Participants: | |||||||||||||
| Description |
|
As per the docs, you must set writeConcernMajorityJournalDefault to false if you are running voting, but non-journaling, nodes in your replica set: |
| Comments |
| Comment by Siyuan Zhou [ 09/Apr/20 ] |
|
I agree fassert on installing a config that is incompatible with the in-memory node is a clean idea. However I'm concerned that adding the constraint in 4.6 would fail upgrade surprisingly. Given that we've already added the warning and the worst case is to fail in another loud way, I'd lean towards to closing the ticket as "Won't Fix". |
| Comment by Eric Milkie [ 20/Sep/17 ] |
|
I was imagining a node might refuse to accept a config where it was a voting member and the flag was set to true. That would have other repercussions of course. I'm fine with the startup warning as 3.5 required. Feel free to close this ticket or backlog it in the meantime. |
| Comment by Spencer Brody (Inactive) [ 20/Sep/17 ] |
|
Our plan for handling this was just to add a startupWarning on the inMemory node in this configuration ( |
| Comment by Spencer Brody (Inactive) [ 20/Sep/17 ] |
|
I don't really understand this request. If a secondary is running the inMemory storage engine how would it force the primary to change its commit level calculation. |
| Comment by Eric Milkie [ 20/Sep/17 ] |
|
Alternatively, an inMemory storage engine node could simply report all writes as durable even though they are not, for the purposes of replica set update position notifications. |