This is an automated email from the ASF dual-hosted git repository. haonan pushed a commit to branch rc/1.2.2 in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 913b25d56893925840c5d361036a1493c5a27c3a Author: HTHou <[email protected]> AuthorDate: Tue Sep 26 19:20:22 2023 +0800 Revert "[IOTDB-6130] Delete data by specific pattern didn't work" This reverts commit 9dd524d07b5b1fdb4af577b332f89e680d49b373. --- .../java/org/apache/iotdb/commons/path/PathPatternTree.java | 10 ++++++++++ .../org/apache/iotdb/commons/path/PathPatternTreeTest.java | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/path/PathPatternTree.java b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/path/PathPatternTree.java index 68680c41a43..d91246b4374 100644 --- a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/path/PathPatternTree.java +++ b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/path/PathPatternTree.java @@ -186,6 +186,11 @@ public class PathPatternTree { return; } } + if (curNode.isWildcard()) { + results.add(convertNodesToString(nodes)); + nodes.remove(nodes.size() - 1); + return; + } for (PathPatternNode<Void, VoidSerializer> childNode : curNode.getChildren().values()) { searchDevicePattern(childNode, nodes, results); } @@ -215,6 +220,11 @@ public class PathPatternTree { return; } } + if (curNode.isWildcard()) { + resultNodesSet.add(new ArrayList<>(nodes)); + nodes.remove(nodes.size() - 1); + return; + } for (PathPatternNode<Void, VoidSerializer> childNode : curNode.getChildren().values()) { searchDevicePath(childNode, nodes, resultNodesSet); } diff --git a/iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/path/PathPatternTreeTest.java b/iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/path/PathPatternTreeTest.java index 4b3eca0b08d..1566a82f75a 100644 --- a/iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/path/PathPatternTreeTest.java +++ b/iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/path/PathPatternTreeTest.java @@ -58,7 +58,7 @@ public class PathPatternTreeTest { new PartialPath("root.sg1.*.t1.s1"), new PartialPath("root.sg1.d2.t1.s1")), Arrays.asList(new PartialPath("root.sg1.d1.t2.s2"), new PartialPath("root.sg1.*.t1.s1")), - Arrays.asList(new PartialPath("root.sg1.d1.t2"), new PartialPath("root.sg1.*.t1")), + Arrays.asList(new PartialPath("root.sg1.d1.t2"), new PartialPath("root.sg1.*")), true); }
