From a6e010f722d72280ab7bc60bd2ce31290158019b Mon Sep 17 00:00:00 2001 From: minghong Date: Tue, 31 Oct 2023 16:52:17 +0800 Subject: [PATCH] [opt](nereids) use rowcount to compute runtime filter size if ndv is not available (#26022) --- .../doris/nereids/processor/post/RuntimeFilterGenerator.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/processor/post/RuntimeFilterGenerator.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/processor/post/RuntimeFilterGenerator.java index e4ee9d9217..776aa5396f 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/processor/post/RuntimeFilterGenerator.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/processor/post/RuntimeFilterGenerator.java @@ -345,7 +345,8 @@ public class RuntimeFilterGenerator extends PlanPostProcessor { } ExpressionEstimation estimator = new ExpressionEstimation(); ColumnStatistic buildColStats = compare.right().accept(estimator, right.getStats()); - return buildColStats.isUnKnown ? -1 : Math.max(1, (long) buildColStats.ndv); + return buildColStats.isUnKnown + ? Math.max(1, (long) right.getStats().getRowCount()) : Math.max(1, (long) buildColStats.ndv); } public static Slot checkTargetChild(Expression leftChild) {