You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ta...@apache.org on 2021/03/29 08:15:35 UTC

[iotdb] branch master updated: [Distributed] Fix stackoverflow bug caused by InsertMultiTabletPlan or InsertRowsPlan (#2938)

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

tanxinyu 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 c8f6d0f  [Distributed] Fix stackoverflow bug caused by InsertMultiTabletPlan or InsertRowsPlan  (#2938)
c8f6d0f is described below

commit c8f6d0f256b2fcb53adc7ee4ce3c48d54fc50d79
Author: Potato <TX...@gmail.com>
AuthorDate: Mon Mar 29 16:14:46 2021 +0800

    [Distributed] Fix stackoverflow bug caused by InsertMultiTabletPlan or InsertRowsPlan  (#2938)
    
    * fix
    
    * fix sessionExample close
    
    * fix sessionExample query
---
 .../main/java/org/apache/iotdb/cluster/coordinator/Coordinator.java   | 1 +
 .../src/main/java/org/apache/iotdb/cluster/metadata/CMManager.java    | 3 +++
 example/session/src/main/java/org/apache/iotdb/SessionExample.java    | 4 ++--
 3 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/coordinator/Coordinator.java b/cluster/src/main/java/org/apache/iotdb/cluster/coordinator/Coordinator.java
index e8be569..3c305a8 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/coordinator/Coordinator.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/coordinator/Coordinator.java
@@ -291,6 +291,7 @@ public class Coordinator {
     } catch (MetadataException e) {
       logger.error("Cannot route plan {}", plan, e);
     }
+    logger.debug("route plan {} with partitionGroup {}", plan, planGroupMap);
     return planGroupMap;
   }
 
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/metadata/CMManager.java b/cluster/src/main/java/org/apache/iotdb/cluster/metadata/CMManager.java
index 5038aa5..6e706cc 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/metadata/CMManager.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/metadata/CMManager.java
@@ -619,6 +619,9 @@ public class CMManager extends MManager {
     PartitionGroup partitionGroup =
         metaGroupMember.getPartitionTable().route(storageGroupName.getFullPath(), 0);
     List<String> unregisteredSeriesList = getUnregisteredSeriesList(seriesList, partitionGroup);
+    if (unregisteredSeriesList.isEmpty()) {
+      return true;
+    }
     logger.debug("Unregisterd series of {} are {}", seriesList, unregisteredSeriesList);
 
     return createTimeseries(unregisteredSeriesList, seriesList, insertPlan);
diff --git a/example/session/src/main/java/org/apache/iotdb/SessionExample.java b/example/session/src/main/java/org/apache/iotdb/SessionExample.java
index e8da3f2..386b4e4 100644
--- a/example/session/src/main/java/org/apache/iotdb/SessionExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/SessionExample.java
@@ -79,7 +79,6 @@ public class SessionExample {
     deleteData();
     deleteTimeseries();
     setTimeout();
-    session.close();
 
     sessionEnableRedirect = new Session(LOCAL_HOST, 6667, "root", "root");
     sessionEnableRedirect.setEnableQueryRedirection(true);
@@ -91,6 +90,7 @@ public class SessionExample {
     insertRecord4Redirect();
     query4Redirect();
     sessionEnableRedirect.close();
+    session.close();
   }
 
   private static void createTimeseries()
@@ -535,7 +535,7 @@ public class SessionExample {
                   + i
                   + ".d1 where time >= 1 and time < 10 and root.redirect"
                   + i
-                  + "d1.s1 > 1");
+                  + ".d1.s1 > 1");
       System.out.println(dataSet.getColumnNames());
       dataSet.setFetchSize(1024); // default is 10000
       while (dataSet.hasNext()) {