-
Type:
Task
-
Resolution: Duplicate
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Sharding
-
None
-
Sharding 2018-04-09
-
None
-
None
-
None
-
None
-
None
-
None
-
None
This logic is implemented in several places of cluster_find and cluster_aggregate
if (isSnapshotRead) {
std::set<ShardId> shardIds = {shardId};
atClusterTime = computeAtClusterTime(opCtx, shardIds);
bool isSameShardIds = verifyTargetedShardsAtClusterTime(opCtx, shardIds, atClusterTime);
if (!isSameShardIds) { // use the current clusterTime if chunks moved
atClusterTime = LogicalClock::get(opCtx)->getClusterTime();
}
}
Build a helper to keep it in one place.
- duplicates
-
SERVER-33027 compute atClusterTime
-
- Closed
-