-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: 5.0.0-rc7, 5.1 Required
-
Component/s: Querying
-
Minor Change
-
ALL
-
v5.0, v4.4, v4.2, v4.0
-
-
Query Execution 2021-07-12, Query Execution 2021-07-26, QE 2021-09-06
-
163
-
None
-
None
-
None
-
None
-
None
-
None
-
None
In classic variant of query execution $mod match expression (ModMatchExpression) interprets dividend value NaN (double) as -9223372036854775808 64-bit integer. In SBE, on the other hand, NaN to 64-bit integer transformation results in Nothing. Furthermore, NumberDecimal("9.999999999999999999999999999999999E+6144") gets interpreted as NumberLong("-9223372036854775808") (classic and SBE). Those two factors, when combined, give unexpected results. Please see "Steps to Reproduce".
- causes
-
SERVER-58874 Coverity analysis defect 120344: Operands don't affect result
-
- Closed
-
- is duplicated by
-
SERVER-58188 Inconsistency between the classic engine and SBE: {$mod: [-Infinity, NumberLong("0")]}
-
- Closed
-