diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/cascades/CostAndEnforcerJob.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/cascades/CostAndEnforcerJob.java index f6ae1d6879..d8e79bd80f 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/cascades/CostAndEnforcerJob.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/cascades/CostAndEnforcerJob.java @@ -317,7 +317,7 @@ public class CostAndEnforcerJob extends Job implements Cloneable { groupExpression.putOutputPropertiesMap(outputProperty, requestProperty); } this.groupExpression.getOwnerGroup().setBestPlan(groupExpression, curTotalCost, requestProperty); - NereidsTracer.logPropertyAndCostEvent(groupExpression.getOwnerGroup().getGroupId().toString(), + NereidsTracer.logPropertyAndCostEvent(groupExpression.getOwnerGroup().getGroupId(), groupExpression.children(), groupExpression.getPlan(), requestProperty, curTotalCost); } diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/minidump/NereidsTracer.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/minidump/NereidsTracer.java index 80101dd750..b1ba66ced2 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/minidump/NereidsTracer.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/minidump/NereidsTracer.java @@ -21,6 +21,7 @@ import org.apache.doris.common.util.DebugUtil; import org.apache.doris.common.util.TimeUtils; import org.apache.doris.nereids.cost.Cost; import org.apache.doris.nereids.memo.Group; +import org.apache.doris.nereids.memo.GroupId; import org.apache.doris.nereids.pattern.Pattern; import org.apache.doris.nereids.properties.PhysicalProperties; import org.apache.doris.nereids.trees.plans.AbstractPlan; @@ -99,7 +100,7 @@ public class NereidsTracer { /** log property and cost pair when doing cost and enforcer task */ public static void logPropertyAndCostEvent( - String groupId, List children, Plan plan, PhysicalProperties requestProperty, Cost cost) { + GroupId groupId, List children, Plan plan, PhysicalProperties requestProperty, Cost cost) { if (!shouldLog) { return; } @@ -120,13 +121,13 @@ public class NereidsTracer { /** log enforcer event when we need to add enforcer */ public static void logEnforcerEvent( - String groupId, Plan plan, PhysicalProperties inputProperty, PhysicalProperties outputProperty) { + GroupId groupId, Plan plan, PhysicalProperties inputProperty, PhysicalProperties outputProperty) { if (!shouldLog) { return; } JSONObject enforcerEventJson = new JSONObject(); JSONObject enforcerMsg = new JSONObject(); - enforcerMsg.put("GroupId", groupId); + enforcerMsg.put("GroupId", groupId.toString()); enforcerMsg.put("Plan", ((AbstractPlan) plan).toJson()); enforcerMsg.put("InputProperty", inputProperty.toString()); enforcerMsg.put("OutputProperty", outputProperty.toString()); diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/ChildrenPropertiesRegulator.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/ChildrenPropertiesRegulator.java index 862dbb5e2b..bb5ce1eec6 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/ChildrenPropertiesRegulator.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/ChildrenPropertiesRegulator.java @@ -90,7 +90,7 @@ public class ChildrenPropertiesRegulator extends PlanVisitor { @Override public Boolean visitPhysicalHashJoin(PhysicalHashJoin hashJoin, Void context) { - Preconditions.checkArgument(children.size() == 2, String.format("children.size() is %d", children.size())); + Preconditions.checkArgument(children.size() == 2, "children.size() != 2"); Preconditions.checkArgument(childrenProperties.size() == 2); Preconditions.checkArgument(requiredProperties.size() == 2); DistributionSpec leftDistributionSpec = childrenProperties.get(0).getDistributionSpec(); diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/EnforceMissingPropertiesHelper.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/EnforceMissingPropertiesHelper.java index 146b165d68..bcbfffc0e7 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/EnforceMissingPropertiesHelper.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/EnforceMissingPropertiesHelper.java @@ -150,7 +150,7 @@ public class EnforceMissingPropertiesHelper { PhysicalProperties oldOutputProperty, PhysicalProperties newOutputProperty) { context.getCascadesContext().getMemo().addEnforcerPlan(enforcer, groupExpression.getOwnerGroup()); - NereidsTracer.logEnforcerEvent(enforcer.getOwnerGroup().getGroupId().toString(), groupExpression.getPlan(), + NereidsTracer.logEnforcerEvent(enforcer.getOwnerGroup().getGroupId(), groupExpression.getPlan(), oldOutputProperty, newOutputProperty); ENFORCER_TRACER.log(EnforcerEvent.of(groupExpression, ((PhysicalPlan) enforcer.getPlan()), oldOutputProperty, newOutputProperty)); diff --git a/fe/fe-core/src/main/java/org/apache/doris/statistics/Statistics.java b/fe/fe-core/src/main/java/org/apache/doris/statistics/Statistics.java index ff889d3edc..cf92df9362 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/statistics/Statistics.java +++ b/fe/fe-core/src/main/java/org/apache/doris/statistics/Statistics.java @@ -151,9 +151,11 @@ public class Statistics { private double computeTupleSize() { if (tupleSize <= 0) { - tupleSize = expressionToColumnStats.values().stream() - .map(s -> s.avgSizeByte).reduce(0D, Double::sum); - tupleSize = Math.max(1, tupleSize); + double tempSize = 0.0; + for (ColumnStatistic s : expressionToColumnStats.values()) { + tempSize += s.avgSizeByte; + } + tupleSize = Math.max(1, tempSize); } return tupleSize; }