This is an automated email from the ASF dual-hosted git repository.
hui 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 210a0b532e [IOTDB-4246] Fix last query without data only return time
column (#7146)
210a0b532e is described below
commit 210a0b532e0f703a07fa238e26c3134c7b0c4ea8
Author: Yifu Zhou <[email protected]>
AuthorDate: Mon Aug 29 16:13:29 2022 +0800
[IOTDB-4246] Fix last query without data only return time column (#7146)
---
.../org/apache/iotdb/db/it/query/IoTDBResultSetIT.java | 14 ++++++++++++++
.../apache/iotdb/db/mpp/plan/analyze/AnalyzeVisitor.java | 3 +++
2 files changed, 17 insertions(+)
diff --git
a/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBResultSetIT.java
b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBResultSetIT.java
index 8f2db6c50d..2e78747693 100644
---
a/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBResultSetIT.java
+++
b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBResultSetIT.java
@@ -183,4 +183,18 @@ public class IoTDBResultSetIT {
ColumnHeaderConstant.COLUMN_DEVICES + "," +
ColumnHeaderConstant.COLUMN_IS_ALIGNED + ",";
resultSetEqualTest("show devices root.sg1.**", expectedHeader,
emptyResultSet);
}
+
+ @Test
+ public void emptyLastQueryTest() {
+ String expectedHeader =
+ ColumnHeaderConstant.COLUMN_TIME
+ + ","
+ + ColumnHeaderConstant.COLUMN_TIMESERIES
+ + ","
+ + ColumnHeaderConstant.COLUMN_VALUE
+ + ","
+ + ColumnHeaderConstant.COLUMN_TIMESERIES_DATATYPE
+ + ",";
+ resultSetEqualTest("select last s1 from root.sg.d1", expectedHeader,
emptyResultSet);
+ }
}
diff --git
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/AnalyzeVisitor.java
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/AnalyzeVisitor.java
index 8b6cc9bc98..8d271db790 100644
---
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/AnalyzeVisitor.java
+++
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/AnalyzeVisitor.java
@@ -179,6 +179,9 @@ public class AnalyzeVisitor extends
StatementVisitor<Analysis, MPPQueryContext>
logger.info("{} fetch schema done", getLogHeader());
// If there is no leaf node in the schema tree, the query should be
completed immediately
if (schemaTree.isEmpty()) {
+ if (queryStatement.isLastQuery()) {
+
analysis.setRespDatasetHeader(DatasetHeaderFactory.getLastQueryHeader());
+ }
analysis.setFinishQueryAfterAnalyze(true);
return analysis;
}