This is an automated email from the ASF dual-hosted git repository. jackietien pushed a commit to branch ty/TableModelGrammar in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit edd9f2438286619cdd29b2179e7e6fa56e7d52cf Author: JackieTien97 <[email protected]> AuthorDate: Fri Apr 26 01:14:29 2024 +0800 partial --- .../iotdb/db/queryengine/plan/planner/TableOperatorGenerator.java | 8 ++++++++ .../queryengine/plan/relational/planner/node/MergeSortNode.java | 8 +++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/TableOperatorGenerator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/TableOperatorGenerator.java index 41f5b7f41b4..767325bb302 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/TableOperatorGenerator.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/TableOperatorGenerator.java @@ -31,6 +31,7 @@ import org.apache.iotdb.db.queryengine.execution.operator.Operator; import org.apache.iotdb.db.queryengine.execution.operator.OperatorContext; import org.apache.iotdb.db.queryengine.execution.operator.process.FilterAndProjectOperator; import org.apache.iotdb.db.queryengine.execution.operator.process.LimitOperator; +import org.apache.iotdb.db.queryengine.execution.operator.process.MergeSortOperator; import org.apache.iotdb.db.queryengine.execution.operator.process.OffsetOperator; import org.apache.iotdb.db.queryengine.execution.operator.sink.IdentitySinkOperator; import org.apache.iotdb.db.queryengine.execution.operator.source.AlignedSeriesScanOperator; @@ -478,6 +479,13 @@ public class TableOperatorGenerator extends PlanVisitor<Operator, LocalExecution @Override public Operator visitMergeSort(MergeSortNode node, LocalExecutionPlanContext context) { + OperatorContext operatorContext = context.getDriverContext().addOperatorContext(context.getNextOperatorId(), node.getPlanNodeId(), + MergeSortOperator.class.getSimpleName()); + List<Operator> children = new ArrayList<>(node.getChildren().size()); + for (PlanNode child : node.getChildren()) { + children.add(this.process(child, context)); + } + return super.visitMergeSort(node, context); } diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/MergeSortNode.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/MergeSortNode.java index 58a94fc3b9c..680d3812bac 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/MergeSortNode.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/MergeSortNode.java @@ -22,6 +22,7 @@ import org.apache.iotdb.db.queryengine.plan.planner.plan.node.PlanNode; import org.apache.iotdb.db.queryengine.plan.planner.plan.node.PlanNodeId; import org.apache.iotdb.db.queryengine.plan.planner.plan.node.process.MultiChildProcessNode; import org.apache.iotdb.db.queryengine.plan.planner.plan.parameter.OrderByParameter; +import org.apache.iotdb.db.queryengine.plan.relational.planner.Symbol; import java.io.DataOutputStream; import java.io.IOException; @@ -47,7 +48,7 @@ public class MergeSortNode extends MultiChildProcessNode { @Override public List<String> getOutputColumnNames() { - return null; + return children.get(0).getOutputColumnNames(); } @Override @@ -55,4 +56,9 @@ public class MergeSortNode extends MultiChildProcessNode { @Override protected void serializeAttributes(DataOutputStream stream) throws IOException {} + + @Override + public List<Symbol> getOutputSymbols() { + return super.getOutputSymbols(); + } }
