This is an automated email from the ASF dual-hosted git repository.
jackietien pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new eee581e1c1f Perfect plan graph for last query scan node
eee581e1c1f is described below
commit eee581e1c1f98da2c39688d0d8f53e653b31521f
Author: Beyyes <[email protected]>
AuthorDate: Mon Sep 4 20:46:12 2023 +0800
Perfect plan graph for last query scan node
---
.../plan/planner/plan/node/PlanGraphPrinter.java | 7 +++++++
.../plan/node/source/AlignedLastQueryScanNode.java | 20 +++++++++++++++-----
.../planner/plan/node/source/LastQueryScanNode.java | 20 +++++++++++++++-----
3 files changed, 37 insertions(+), 10 deletions(-)
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/PlanGraphPrinter.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/PlanGraphPrinter.java
index ec63414d2f7..ff72ddf559c 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/PlanGraphPrinter.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/PlanGraphPrinter.java
@@ -60,6 +60,7 @@ import
org.apache.iotdb.db.queryengine.plan.planner.plan.parameter.IntoPathDescr
import org.apache.iotdb.tsfile.utils.Pair;
import org.apache.commons.lang3.Validate;
+import org.eclipse.jetty.util.StringUtil;
import java.util.ArrayList;
import java.util.HashMap;
@@ -384,6 +385,9 @@ public class PlanGraphPrinter extends
PlanVisitor<List<String>, PlanGraphPrinter
List<String> boxValue = new ArrayList<>();
boxValue.add(String.format("LastQueryScan-%s",
node.getPlanNodeId().getId()));
boxValue.add(String.format("Series: %s", node.getSeriesPath()));
+ if (StringUtil.isNotBlank(node.getOutputViewPath())) {
+ boxValue.add(String.format("ViewPath: %s", node.getOutputViewPath()));
+ }
boxValue.add(printRegion(node.getRegionReplicaSet()));
return render(node, boxValue, context);
}
@@ -397,6 +401,9 @@ public class PlanGraphPrinter extends
PlanVisitor<List<String>, PlanGraphPrinter
String.format(
"Series: %s%s",
node.getSeriesPath().getDevice(),
node.getSeriesPath().getMeasurementList()));
+ if (StringUtil.isNotBlank(node.getOutputViewPath())) {
+ boxValue.add(String.format("ViewPath: %s", node.getOutputViewPath()));
+ }
boxValue.add(printRegion(node.getRegionReplicaSet()));
return render(node, boxValue, context);
}
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/source/AlignedLastQueryScanNode.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/source/AlignedLastQueryScanNode.java
index 60648d27a2b..d4c1c3e5396 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/source/AlignedLastQueryScanNode.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/source/AlignedLastQueryScanNode.java
@@ -32,6 +32,7 @@ import org.apache.iotdb.tsfile.read.filter.basic.Filter;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
import com.google.common.collect.ImmutableList;
+import org.eclipse.jetty.util.StringUtil;
import java.io.DataOutputStream;
import java.io.IOException;
@@ -158,11 +159,20 @@ public class AlignedLastQueryScanNode extends
LastSeriesSourceNode {
@Override
public String toString() {
- return String.format(
- "AlignedLastQueryScanNode-%s:[SeriesPath: %s, DataRegion: %s]",
- this.getPlanNodeId(),
- this.getSeriesPath().getFormattedString(),
- PlanNodeUtil.printRegionReplicaSet(this.getRegionReplicaSet()));
+ if (StringUtil.isNotBlank(outputViewPath)) {
+ return String.format(
+ "AlignedLastQueryScanNode-%s:[SeriesPath: %s, ViewPath: %s,
DataRegion: %s]",
+ this.getPlanNodeId(),
+ this.getSeriesPath().getFormattedString(),
+ this.getOutputViewPath(),
+ PlanNodeUtil.printRegionReplicaSet(this.getRegionReplicaSet()));
+ } else {
+ return String.format(
+ "AlignedLastQueryScanNode-%s:[SeriesPath: %s, DataRegion: %s]",
+ this.getPlanNodeId(),
+ this.getSeriesPath().getFormattedString(),
+ PlanNodeUtil.printRegionReplicaSet(this.getRegionReplicaSet()));
+ }
}
@Override
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/source/LastQueryScanNode.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/source/LastQueryScanNode.java
index a15302b0dd3..aa89e61bd0a 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/source/LastQueryScanNode.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/source/LastQueryScanNode.java
@@ -32,6 +32,7 @@ import org.apache.iotdb.tsfile.read.filter.basic.Filter;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
import com.google.common.collect.ImmutableList;
+import org.eclipse.jetty.util.StringUtil;
import java.io.DataOutputStream;
import java.io.IOException;
@@ -164,11 +165,20 @@ public class LastQueryScanNode extends
LastSeriesSourceNode {
@Override
public String toString() {
- return String.format(
- "LastQueryScanNode-%s:[SeriesPath: %s, DataRegion: %s]",
- this.getPlanNodeId(),
- this.getSeriesPath(),
- PlanNodeUtil.printRegionReplicaSet(getRegionReplicaSet()));
+ if (StringUtil.isNotBlank(outputViewPath)) {
+ return String.format(
+ "LastQueryScanNode-%s:[SeriesPath: %s, ViewPath: %s, DataRegion:
%s]",
+ this.getPlanNodeId(),
+ this.getSeriesPath(),
+ this.getOutputViewPath(),
+ PlanNodeUtil.printRegionReplicaSet(getRegionReplicaSet()));
+ } else {
+ return String.format(
+ "LastQueryScanNode-%s:[SeriesPath: %s, DataRegion: %s]",
+ this.getPlanNodeId(),
+ this.getSeriesPath(),
+ PlanNodeUtil.printRegionReplicaSet(getRegionReplicaSet()));
+ }
}
@Override