-
Type: Task
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Query Integration
We have special logic for determining a search pipeline's "deferred" split point to divide the user pipeline into the shards and merging pipeline. The logic relies on the "preservesOrderAndMetadata" stage constraints, but we never populated that field for any stages other than idLookup. We should populate that field for some stages (at least, $project, $match, $limit) so those stages can be pushed to shards.
We'll need to do thorough testing to make sure we can in fact safely push those stages down without affecting correctness.
- depends on
-
SERVER-96067 Properly set the ‘preserveOrderAndMetadata’ field for common aggregation states
- Open
- is related to
-
SERVER-91020 Sharded $search queries should not exhaust all results on shards to generate first batch
- Backlog
- related to
-
SERVER-92133 Ability to use a real mongot in js-launched test fixtures like ShardingTest
- Open