You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ca...@apache.org on 2023/09/14 16:14:10 UTC

[iotdb] branch beyyes/last_view updated: fix aligned last query

This is an automated email from the ASF dual-hosted git repository.

caogaofei pushed a commit to branch beyyes/last_view
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/beyyes/last_view by this push:
     new ddd600f52d4 fix aligned last query
ddd600f52d4 is described below

commit ddd600f52d480e343415e5abbd892f6230016e83
Author: Beyyes <cg...@foxmail.com>
AuthorDate: Fri Sep 15 00:13:55 2023 +0800

    fix aligned last query
---
 .../test/java/org/apache/iotdb/db/it/utils/AlignedWriteUtil.java | 6 ++++++
 .../src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java      | 2 +-
 .../iotdb/db/queryengine/plan/planner/LogicalPlanBuilder.java    | 9 ++++++++-
 3 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/utils/AlignedWriteUtil.java b/integration-test/src/test/java/org/apache/iotdb/db/it/utils/AlignedWriteUtil.java
index 798f1b2b889..871d8407330 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/utils/AlignedWriteUtil.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/utils/AlignedWriteUtil.java
@@ -35,6 +35,12 @@ import static org.junit.Assert.fail;
  */
 public class AlignedWriteUtil {
 
+  public static void main(String[] args) {
+    for (String s : sqls) {
+      System.out.println(s + ";");
+    }
+  }
+
   private static final String[] sqls =
       new String[] {
         "CREATE DATABASE root.sg1",
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
index 4a936d876e9..6c9722ab1fd 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
@@ -579,7 +579,7 @@ public class IoTDBConfig {
   private long cacheFileReaderClearPeriod = 100000;
 
   /** the max executing time of query in ms. Unit: millisecond */
-  private long queryTimeoutThreshold = 600000000;
+  private long queryTimeoutThreshold = 60000;
 
   /** the max time to live of a session in ms. Unit: millisecond */
   private int sessionTimeoutThreshold = 0;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/LogicalPlanBuilder.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/LogicalPlanBuilder.java
index 822dd7bb78a..5715d4a762a 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/LogicalPlanBuilder.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/LogicalPlanBuilder.java
@@ -120,6 +120,7 @@ import java.util.LinkedHashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.TreeMap;
 import java.util.stream.Collectors;
 
 import static com.google.common.base.Preconditions.checkArgument;
@@ -236,8 +237,14 @@ public class LogicalPlanBuilder {
                   : ((TimeSeriesOperand) sourceExpression).getPath());
       String outputDevice = outputPath.getDevice();
       outputPathToSourceExpressionMap
-          .computeIfAbsent(outputDevice, k -> new LinkedHashMap<>())
+          .computeIfAbsent(
+              outputDevice,
+              k ->
+                  timeseriesOrdering != null
+                      ? new TreeMap<>(timeseriesOrdering.getStringComparator())
+                      : new LinkedHashMap<>())
           .put(outputPath.getMeasurement(), sourceExpression);
+      ;
       if (outputPath.isUnderAlignedEntity()) {
         deviceAlignedSet.add(outputDevice);
       }