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

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


The following commit(s) were added to refs/heads/branch-2.1 by this push:
     new fcf26c92246 [fix](runtimefilter)slot comparison bug #34791
fcf26c92246 is described below

commit fcf26c92246fddb0c05d90b0933977f8650f790b
Author: minghong <engle...@gmail.com>
AuthorDate: Tue May 14 11:03:49 2024 +0800

    [fix](runtimefilter)slot comparison bug #34791
---
 .../doris/nereids/processor/post/RuntimeFilterPushDownVisitor.java  | 6 +++---
 .../doris/nereids/trees/plans/physical/PhysicalCTEConsumer.java     | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/processor/post/RuntimeFilterPushDownVisitor.java
 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/processor/post/RuntimeFilterPushDownVisitor.java
index 7cadbde1768..22fd2c811ff 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/processor/post/RuntimeFilterPushDownVisitor.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/processor/post/RuntimeFilterPushDownVisitor.java
@@ -389,7 +389,7 @@ public class RuntimeFilterPushDownVisitor extends 
PlanVisitor<Boolean, PushDownC
         List<NamedExpression> output = setOperation.getOutputs();
         for (int j = 0; j < output.size(); j++) {
             NamedExpression expr = output.get(j);
-            if (expr.getName().equals(probeSlot.getName())) {
+            if (expr.getExprId().equals(probeSlot.getExprId())) {
                 projIndex = j;
                 break;
             }
@@ -397,10 +397,10 @@ public class RuntimeFilterPushDownVisitor extends 
PlanVisitor<Boolean, PushDownC
         if (projIndex == -1) {
             return false;
         }
+        // probeExpr only has one input slot
         for (int i = 0; i < setOperation.children().size(); i++) {
             Map<Expression, Expression> map = Maps.newHashMap();
-            // probeExpr only has one input slot
-            map.put(ctx.probeExpr.getInputSlots().iterator().next(),
+            map.put(probeSlot,
                     
setOperation.getRegularChildrenOutputs().get(i).get(projIndex));
             Expression newProbeExpr = 
ctx.probeExpr.accept(ExpressionVisitors.EXPRESSION_MAP_REPLACER, map);
             PushDownContext childPushDownContext = 
ctx.withNewProbeExpression(newProbeExpr);
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEConsumer.java
 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEConsumer.java
index a3fab008163..9139e3142b1 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEConsumer.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEConsumer.java
@@ -103,7 +103,7 @@ public class PhysicalCTEConsumer extends PhysicalRelation {
                     .stream().forEach(rf -> builder.append(" 
RF").append(rf.getId().asInt()));
         }
         return Utils.toSqlString("PhysicalCTEConsumer[" + id.asInt() + "]",
-                "stats", getStats(), "cteId", cteId, "RFs", builder);
+                "stats", getStats(), "cteId", cteId, "RFs", builder, "map", 
consumerToProducerSlotMap);
     }
 
     @Override


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to