Details
-
Task
-
Resolution: Fixed
-
Major - P3
-
None
-
None
-
None
-
Fully Compatible
-
QO 2022-11-14, QO 2022-11-28
Description
This rewrite would push a UnaryOp[not] through an EvalFilter under certain conditions. For example UnaryOp[not] EvalFilter PathCompare[eq] Constant[2] --> EvalFilter PathCompare[neq] Constant[2]
This is not always correct when the path below the EvalFilter contains a Traverse. For example, the following rewrite is not correct:
UnaryOp[not] EvalFilter PathGet["a] PathTraverse[1] PathCompare[eq] Constant[2] --> EvalFilter PathGet["a] PathTraverse[1] PathCompare[neq] Constant[2]
This would have incorrect behavior for arrays at path "a".
Attachments
Issue Links
- is depended on by
-
SERVER-70089 CE for neq
-
- Closed
-
- related to
-
SERVER-69591 [CQF] Simplify non-sargable paths
-
- Closed
-