diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/processor/post/RecomputeLogicalPropertiesProcessor.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/processor/post/RecomputeLogicalPropertiesProcessor.java index c676812ef3..08b9132b0c 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/processor/post/RecomputeLogicalPropertiesProcessor.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/processor/post/RecomputeLogicalPropertiesProcessor.java @@ -18,6 +18,7 @@ package org.apache.doris.nereids.processor.post; import org.apache.doris.nereids.CascadesContext; +import org.apache.doris.nereids.trees.plans.AbstractPlan; import org.apache.doris.nereids.trees.plans.Plan; import org.apache.doris.nereids.trees.plans.physical.PhysicalPlan; import org.apache.doris.nereids.util.MutableState; @@ -30,6 +31,8 @@ public class RecomputeLogicalPropertiesProcessor extends PlanPostProcessor { public Plan visit(Plan plan, CascadesContext ctx) { PhysicalPlan physicalPlan = (PhysicalPlan) visitChildren(this, plan, ctx); physicalPlan = physicalPlan.resetLogicalProperties(); + physicalPlan = physicalPlan.withPhysicalPropertiesAndStats(physicalPlan.getPhysicalProperties(), + ((AbstractPlan) plan).getStats()); physicalPlan.setMutableState(MutableState.KEY_GROUP, plan.getGroupIdAsString()); return physicalPlan; }