-
Type: Bug
-
Resolution: Gone away
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Query Optimization
-
ALL
-
QO 2023-11-13, QO 2023-11-27
This test fails when parameterization is enabled with a tassert that the optimizer fails to generate a plan.
The query isĀ
find({a: {$in: [1, 2, 3]}}).sort({_id: 1}).hint({a: 1})
The predicate is translated as
PathGet [a] PathTraverse [1] PathCompare [EqMember] FunctionCall [getParam] | Const [15] // type of array Const [0] // parameter ID
When we try to convert this ABT to PartialSchemaRequirements, we fail because we only support building bounds for EqMember when the operand is a Constant.
This results in us failing to convert this filter to a SargableNode, which is necessary for the optimizer to ever emit an ixscan plan. With the hint, we disable collscan plans, so we fail to generate a plan.
- depends on
-
SERVER-83512 Run CQF tests with parameterization
- Closed