-
Type: Task
-
Resolution: Duplicate
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: manual
-
Labels:
Description
Normally, the default writeConcern will be applied to all incoming operations that accept WC, including admin commands. However, there is a subset of admin commands referred to as "sharding admin commands", which are different because they perform operations on the config server primary with w:majority (they can be found by grepping for calls to appendMajorityWriteConcern).
The current behaviour for sharding admin commands is:
- supplied WC { w: X, wtimeout: Y }: apply { w: "majority", wtimeout: Y }
- no supplied WC: apply { w: "majority", wtimeout: 60000 }
This ticket has not changed this behaviour.
However, the behaviour for these commands in the presence of default writeConcern has a subtle adjustment. If the default WC includes wtimeout less than 60000, then for sharding admin commands only the applied WC will have its wtimeout upgraded to 60000. To put this another way, for sharding admin commands the minimum wtimeout from default writeConcern is 60000. Spelling this out into the different cases:
- supplied WC { w: X, wtimeout: Y }: apply { w: "majority", wtimeout: Y }
- no supplied WC and no default WC: apply { w: "majority", wtimeout: 60000 }
- no supplied WC and default WC { w: X, wtimeout: Y }: apply { w: "majority", wtimeout: max(60000, Y) }, ie:
- for Y <= 60000: apply { w: "majority", wtimeout: 60000 }
- for Y > 60000: apply { w: "majority", wtimeout: Y }
Again, this is all only for sharding admin commands, and other commands/ops are not subject to this behaviour.
Description of Linked Ticket
null
Scope of changes
Impact to Other Docs
MVP (Work and Date)
Resources (Scope or Design Docs, Invision, etc.)
- documents
-
SERVER-45098 Test application of RWCDefaults to all commands
- Closed
- is related to
-
DOCS-13333 Investigate changes in SERVER-45038: Add privilege actions for getDefaultRWConcern and setDefaultRWConcern commands
- Closed