diff --git a/fe/fe-core/src/main/java/org/apache/doris/common/util/RuntimeProfile.java b/fe/fe-core/src/main/java/org/apache/doris/common/util/RuntimeProfile.java index 372b84fa3f..ab5fec3413 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/common/util/RuntimeProfile.java +++ b/fe/fe-core/src/main/java/org/apache/doris/common/util/RuntimeProfile.java @@ -654,8 +654,17 @@ public class RuntimeProfile { if (planNodeMap == null || !planNodeMap.containsKey(child.nodeId())) { return; } - child.addPlanNodeInfos(planNodeMap.get(child.nodeId())); - planNodeMap.remove(child.nodeId()); + + /* + * The check for SINK_OPERATOR is performed because SINK_OPERATOR does not have + * a corresponding plan node ID. + * Currently, the plan node info is only printed for non-sink nodes in the merge + * profile. + */ + if (name.contains("_SINK_OPERATOR")) { + child.addPlanNodeInfos(planNodeMap.get(child.nodeId())); + planNodeMap.remove(child.nodeId()); + } } public void addPlanNodeInfos(String infos) {