-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Sharding
-
Fully Compatible
-
Sharding 2018-08-13, Sharding 2018-08-27
Currently, atClusterTime is chosen in the find and aggregate paths and directly put into the readConcerns of the requests created by those commands. Instead, atClusterTime should be placed on the RouterSession during targeting and added to requests in TransactionParticipant::attachTxnFieldsIfNeeded. snapshot level readConcern should also be disallowed on mongos for commands not in a multi statement transaction.
Mongos may try several different atClusterTime values until it finds one that all shards can provide a snapshot at. Mongos should remember the first value that was successful, so every subsequent statement that targets a new shard can use it.
- has to be done before
-
SERVER-36591 Allow mongos to retry on snapshot errors received when starting a transaction
- Closed