Details
Description
This "umbrella" task tracks POC implementation of the Cluster-wide Snapshot Reads design spec.
There will be other tasks this task will be dependent on.
Below are tasks
1. distribute snapshotTime. The details on getting this value on the replica set must be made available in the Local Snapshot Reads design spec
2. keep track of the shard's snapshotTime on mongos per shard
3. keep track of the open "read-only" transaction on mongos so the multi statement reads use the same snapshot. The minimum will be the find/getMore for the cursor
4. implement the logic to buffer the data before all shards confirm that they can establish snapshot - look how the SSV is currently handled.
5. handle SnapshotUnavailable, SnapshotTooOld errors similar to SSV to restart the snapshot establish process.