diff --git a/fe/fe-core/src/main/java/org/apache/doris/common/IdGenerator.java b/fe/fe-core/src/main/java/org/apache/doris/common/IdGenerator.java index b244010dc3..89267166ba 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/common/IdGenerator.java +++ b/fe/fe-core/src/main/java/org/apache/doris/common/IdGenerator.java @@ -34,4 +34,8 @@ public abstract class IdGenerator> { } public abstract IdType getNextId(); + + public int getCurrentId() { + return nextId; + } } 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 420e25126d..5722fa527d 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 @@ -573,7 +573,7 @@ public class RuntimeFilterGenerator extends PlanPostProcessor { RuntimeFilter filter = new RuntimeFilter(generator.getNextId(), rf.getSrcExpr(), targetList, targetExpressions, rf.getType(), rf.getExprOrder(), rf.getBuilderNode(), buildSideNdv, rf.isBloomFilterSizeCalculatedByNdv(), - cteNode); + rf.gettMinMaxType(), cteNode); targetNodes.forEach(node -> node.addAppliedRuntimeFilter(filter)); for (Slot slot : targetList) { ctx.setTargetExprIdToFilter(slot.getExprId(), filter); diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/RuntimeFilter.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/RuntimeFilter.java index 9f810e73ec..b2b078aaeb 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/RuntimeFilter.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/RuntimeFilter.java @@ -58,11 +58,11 @@ public class RuntimeFilter { */ public RuntimeFilter(RuntimeFilterId id, Expression src, List targets, List targetExpressions, TRuntimeFilterType type, int exprOrder, AbstractPhysicalJoin builderNode, long buildSideNdv, - boolean bloomFilterSizeCalculatedByNdv, + boolean bloomFilterSizeCalculatedByNdv, TMinMaxRuntimeFilterType tMinMaxType, PhysicalRelation scan) { this(id, src, targets, targetExpressions, type, exprOrder, builderNode, false, buildSideNdv, bloomFilterSizeCalculatedByNdv, - TMinMaxRuntimeFilterType.MIN_MAX, scan); + tMinMaxType, scan); } public RuntimeFilter(RuntimeFilterId id, Expression src, List targets, List targetExpressions,