-
Type:
Bug
-
Resolution: Duplicate
-
Priority:
Blocker - P1
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Query Optimization
-
ALL
-
None
-
None
-
None
-
None
-
None
-
None
-
None
The estimates library (estimates.[h,cpp]) provides a compile-time safe double wrapper with runtime bounds checking and approximate equality.
Runtime checks ensure that it is not possible to generate meaningless estimates, such as negative CEs or costs. However, approximate comparison requires more careful consideration by users of this library because some operations may have non-obvious consequences.
- Inspect all potentially dangerous uses of estimates. Most notably subtraction and division that may result in invalid estimates that would trigger a tassert.
- Make the Estimates library more resilient to developer errors when comparison operator semantics differs from that of built-in C++ operators.
As a result there should be fewer cases when tasserts may be thrown, and fewer cases where users of the library must understand its details.
- is related to
-
SERVER-125501 Fix logical bug caused by fuzzy comparators in cardinality estimation of $skip nodes
-
- Closed
-
-
SERVER-125558 Use strict comparison to choose final CE result in estimate(OIL) in cardinality estimator
-
- Closed
-
-
SERVER-125525 Inspect usage of the Estimates library and make it more resilient
-
- In Progress
-