-
Type:
Improvement
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Query Optimization
-
None
-
None
-
None
-
None
-
None
-
None
-
None
This ticket was originally to write a PBT that runs queries targeted to hit the new $expr-splitting optimization from SERVER-106505.
However, it’s clear that a more general PBT testing $match-splitting optimizations more generally would be beneficial. This PBT would compare the results of those queries when running against a server with optimizations enabled and a server with optimizations disabled.
We could start by implementing this PBT to specifically cover $match splitting past a renaming stage. The queries could have a computing/renaming operation following by a $match, For example:
[{$project|$group|$addFields: {...}}, {$match: {...}}]
- is related to
-
SERVER-112772 $expr predicates can be incorrectly pushed down before a $group, causing incorrect query results
-
- Open
-
-
SERVER-113319 $match pushdown past a renamed field is done incorrectly when the expression root is a renamed field path expression
-
- Closed
-
-
SERVER-116417 Extend PBT grammar to support generation of $match with $expr
-
- Backlog
-
-
SERVER-106505 $sequentialCache optimization can interfere with $match pushdown in a $lookup sub-pipeline
-
- Closed
-