[SERVER-36237] Integrate atClusterTime selection on mongos with RouterSession Created: 23/Jul/18 Updated: 29/Oct/23 Resolved: 21/Aug/18 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | None |
| Fix Version/s: | 4.1.2 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Jack Mulrow | Assignee: | Cheahuychou Mao |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | ShardedTxn:GlobalSnapshot | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||
| Sprint: | Sharding 2018-08-13, Sharding 2018-08-27 | ||||||||
| Participants: | |||||||||
| Description |
|
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. |
| Comments |
| Comment by Githook User [ 21/Aug/18 ] |
|
Author: {'name': 'Cheahuychou Mao', 'email': 'cheahuychou.mao@mongodb.com', 'username': 'cheahuychou'}Message: |