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

zyk 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 5dd2031ab4 [IOTDB-5474] Fix count nodes using level bug (#9035)
5dd2031ab4 is described below

commit 5dd2031ab4f3d21d2b60f169cdeab19fccba4a50
Author: Marcos_Zyk <[email protected]>
AuthorDate: Thu Feb 9 21:18:46 2023 +0800

    [IOTDB-5474] Fix count nodes using level bug (#9035)
---
 .../iotdb/commons/schema/tree/AbstractTreeVisitor.java     |  1 +
 .../apache/iotdb/db/metadata/mtree/ConfigMTreeTest.java    | 14 ++++++++++++++
 2 files changed, 15 insertions(+)

diff --git 
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/tree/AbstractTreeVisitor.java
 
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/tree/AbstractTreeVisitor.java
index 3d58f2221c..a2fa004d9c 100644
--- 
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/tree/AbstractTreeVisitor.java
+++ 
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/tree/AbstractTreeVisitor.java
@@ -201,6 +201,7 @@ public abstract class AbstractTreeVisitor<N extends 
ITreeNode, R>
 
       N nextTempNode = iterator.next();
 
+      shouldVisitSubtree = false;
       if (currentStateMatchInfo.hasFinalState()) {
         if (acceptFullMatchedNode(nextTempNode)) {
           nextMatchedNode = nextTempNode;
diff --git 
a/server/src/test/java/org/apache/iotdb/db/metadata/mtree/ConfigMTreeTest.java 
b/server/src/test/java/org/apache/iotdb/db/metadata/mtree/ConfigMTreeTest.java
index a7a2f5588c..b4488acafe 100644
--- 
a/server/src/test/java/org/apache/iotdb/db/metadata/mtree/ConfigMTreeTest.java
+++ 
b/server/src/test/java/org/apache/iotdb/db/metadata/mtree/ConfigMTreeTest.java
@@ -228,6 +228,20 @@ public class ConfigMTreeTest {
     result = root.getNodesListInGivenLevel(new PartialPath("root.*.*"), 1, 
false);
     Assert.assertEquals(0, result.left.size());
     Assert.assertEquals(2, result.right.size());
+
+    root.setStorageGroup(new PartialPath("root.test.`001.002.003`"));
+    root.setStorageGroup(new PartialPath("root.test.g_0.s_0_b001"));
+    root.setStorageGroup(new PartialPath("root.sg"));
+    root.setStorageGroup(new PartialPath("root.ln"));
+
+    result = root.getNodesListInGivenLevel(new PartialPath("root.*.*.s1"), 2, 
true);
+    Assert.assertEquals(0, result.left.size());
+    Assert.assertEquals(5, result.right.size());
+    Assert.assertTrue(result.right.contains(new PartialPath("root.sg1")));
+    Assert.assertTrue(result.right.contains(new PartialPath("root.sg2")));
+    Assert.assertTrue(result.right.contains(new PartialPath("root.sg")));
+    Assert.assertTrue(result.right.contains(new PartialPath("root.ln")));
+    Assert.assertTrue(result.right.contains(new 
PartialPath("root.test.`001.002.003`")));
   }
 
   @Test

Reply via email to