[DOCS-13345] Investigate changes in SERVER-45098: Test application of RWCDefaults to all commands Created: 16/Jan/20  Updated: 13/Nov/23  Resolved: 28/May/20

Status: Closed
Project: Documentation
Component/s: manual
Affects Version/s: None
Fix Version/s: 4.3.3, Server_Docs_20231030, Server_Docs_20231106, Server_Docs_20231105, Server_Docs_20231113

Type: Task Priority: Major - P3
Reporter: Backlog - Core Eng Program Management Team Assignee: Unassigned
Resolution: Duplicate Votes: 0
Labels: docs-sharding
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Documented
documents SERVER-45098 Test application of RWCDefaults to al... Closed
Duplicate
Related
is related to DOCS-13333 Investigate changes in SERVER-45038: ... Closed
Participants:
Days since reply: 3 years, 36 weeks, 6 days ago
Epic Link: DOCS: 4.4 Server Release Work

 Description   

Description

Downstream Change Summary

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.)



 Comments   
Comment by Ravind Kumar (Inactive) [ 28/May/20 ]

The work w.r.t. global default wtimeout and sharding admin commands was done as part of DOCSP-7544. See [this commit](https://github.com/mongodb/docs/commit/4ed15e0b01232b24de9878604a936cdae34a0a16#diff-5647b554183a3604f97c3ca7ca311f2fR198-R211)

Generated at Thu Feb 08 08:07:32 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.