Details
-
Task
-
Resolution: Done
-
Minor - P4
-
None
-
None
-
3
Description
This patch changes shard targeting aggregation to no longer have a special case for unsharded collections (that is, aggregate command requests that target an unsharded collection use the same path as those which target a sharded collection). The effect of this is mostly invisible to the user, except for explain output, which in the case of an unsharded collection will put the output under the 'shards' field (previously, this was not done).
Another effect of this is that in $search against a sharded cluster, we will call 'planShardedSearch' for an unsharded collection.
Description of Linked Ticket
This code path should be unnecessary if the kAnyShard code path can handle all the cases with unsharded collections and route accordingly.
- Eliminate LiteParsedPipeline::allowedToPassthroughFromMongos() and LiteParsedDocumentSource::allowedToPassthroughFromMongos()
- Delete runPipelineOnPrimaryShard()
Attachments
Issue Links
- documents
-
SERVER-79724 Get rid of the AggregationTargeter::TargetingPolicy::kPassthrough and the entire “passthrough” code path in agg
-
- Closed
-
- has to be done after
-
SERVER-80145 Avoid explicit callers of ChunkManager::dbPrimary() when doing shard targeting in agg code
-
- Closed
-