This is an automated email from the ASF dual-hosted git repository.

kxiao pushed a commit to branch branch-2.0
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-2.0 by this push:
     new b01d082b09e [fix](Nereids) stats estimation of lessThan #28444 (#28824)
b01d082b09e is described below

commit b01d082b09e54b3bbe9304e9548e9190ed03d69a
Author: minghong <[email protected]>
AuthorDate: Fri Dec 22 11:31:40 2023 +0800

    [fix](Nereids) stats estimation of lessThan #28444 (#28824)
---
 .../main/java/org/apache/doris/nereids/stats/FilterEstimation.java    | 4 ++++
 .../src/main/java/org/apache/doris/statistics/StatisticRange.java     | 4 ++++
 2 files changed, 8 insertions(+)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/stats/FilterEstimation.java 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/stats/FilterEstimation.java
index 9c04b59ce6d..d5c9ded22e3 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/stats/FilterEstimation.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/stats/FilterEstimation.java
@@ -512,6 +512,10 @@ public class FilterEstimation extends 
ExpressionVisitor<Statistics, EstimationCo
             context.addKeyIfSlot(rightExpr);
             return statistics;
         }
+        if (leftRange.isInfinite() || rightRange.isInfinite()) {
+            return context.statistics.withSel(DEFAULT_INEQUALITY_COEFFICIENT);
+        }
+
         double leftOverlapPercent = leftRange.overlapPercentWith(rightRange);
         // Left always greater than right
         if (leftOverlapPercent == 0) {
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/statistics/StatisticRange.java 
b/fe/fe-core/src/main/java/org/apache/doris/statistics/StatisticRange.java
index 74b77c2ee7c..7b7b08ab246 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/statistics/StatisticRange.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/statistics/StatisticRange.java
@@ -239,4 +239,8 @@ public class StatisticRange {
         return distinctValues;
     }
 
+    @Override
+    public String toString() {
+        return "(" + lowExpr + "," + highExpr + ")";
+    }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to