jack870131 commented on a change in pull request #435: [IOTDB-174] Fix querying 
timeseries interface cannot make a query by the specified path prefix
URL: https://github.com/apache/incubator-iotdb/pull/435#discussion_r335746616
 
 

 ##########
 File path: server/src/main/java/org/apache/iotdb/db/metadata/MTree.java
 ##########
 @@ -783,19 +783,23 @@ private void findStorageGroup(MNode node, String path, 
HashSet<String> res) {
    * @return a list contains all distinct devices
    */
   Set<String> getAllDevices() {
-    return new HashSet<>(getNodesList(3));
+    return new HashSet<>(getNodesList("root",2));
   }
 
   /**
    * Get all nodes at the given level in current Metadata Tree.
    *
    * @return a list contains all nodes at the given level
    */
-  List<String> getNodesList(int nodeLevel) {
+  List<String> getNodesList(String schemaPattern, int nodeLevel) {
     List<String> res = new ArrayList<>();
-    MNode rootNode;
-    if ((rootNode = getRoot()) != null) {
-      findNodes(rootNode, "root", res, nodeLevel);
+    String[] nodes = schemaPattern.split("\\.");
+    MNode node;
+    if ((node = getRoot()) != null) {
+      for (int i = 1; i < nodes.length; i++) {
+        node = node.getChild(nodes[i]);
 
 Review comment:
   @LeiRui Hi,I have no idea about how to implement this as the function of 
showing all devices was not developed by me. I just did some minor changes to 
ensure that it won't report the error.
   
   Could you please provide me some advices or discuss with me on how to get 
this function done? Maybe this should be on another PR. What do you guys think.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to