From bdf7d2779a207cbd4e6507fe5a275385e2c9df7a Mon Sep 17 00:00:00 2001 From: minghong Date: Mon, 14 Nov 2022 16:27:55 +0800 Subject: [PATCH] [fix](Nereids) aggregate always report has 1 row count (#14236) the data structure of new stats is changed, bug Agg-estimation is not changed --- .../java/org/apache/doris/nereids/stats/StatsCalculatorV2.java | 1 + 1 file changed, 1 insertion(+) diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/stats/StatsCalculatorV2.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/stats/StatsCalculatorV2.java index 005e5963da..a3b97c01e3 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/stats/StatsCalculatorV2.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/stats/StatsCalculatorV2.java @@ -331,6 +331,7 @@ public class StatsCalculatorV2 extends DefaultPlanVisitor childSlotToColumnStats = childStats.getSlotIdToColumnStats(); double resultSetCount = groupByExpressions.stream().flatMap(expr -> expr.getInputSlots().stream()) + .map(Slot::getExprId) .filter(childSlotToColumnStats::containsKey).map(childSlotToColumnStats::get).map(s -> s.ndv) .reduce(1d, (a, b) -> a * b); if (resultSetCount <= 0) {