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 3f596c676f [IOTDB-3550]Fix show child nodes (#6598)
3f596c676f is described below

commit 3f596c676f0b81020db5fd143b103c0ab2196540
Author: Marcos_Zyk <[email protected]>
AuthorDate: Wed Jul 6 18:02:45 2022 +0800

    [IOTDB-3550]Fix show child nodes (#6598)
    
    [IOTDB-3550]Fix show child nodes #6598
---
 .../execution/operator/schema/NodePathsConvertOperator.java    |  3 +++
 .../execution/operator/schema/SchemaQueryMergeOperator.java    | 10 ++++++----
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git 
a/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/NodePathsConvertOperator.java
 
b/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/NodePathsConvertOperator.java
index e6bfa76e23..2af62ce754 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/NodePathsConvertOperator.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/NodePathsConvertOperator.java
@@ -60,6 +60,9 @@ public class NodePathsConvertOperator implements 
ProcessOperator {
   @Override
   public TsBlock next() {
     TsBlock block = child.next();
+    if (block == null || block.isEmpty()) {
+      return null;
+    }
     TsBlockBuilder tsBlockBuilder =
         new 
TsBlockBuilder(HeaderConstant.showChildNodesHeader.getRespDataTypes());
 
diff --git 
a/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/SchemaQueryMergeOperator.java
 
b/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/SchemaQueryMergeOperator.java
index 4902d36fe0..519cdce27e 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/SchemaQueryMergeOperator.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/SchemaQueryMergeOperator.java
@@ -51,14 +51,16 @@ public class SchemaQueryMergeOperator implements 
ProcessOperator {
 
   @Override
   public TsBlock next() {
-    return children.get(currentIndex).next();
+    if (children.get(currentIndex).hasNext()) {
+      return children.get(currentIndex).next();
+    } else {
+      currentIndex++;
+      return null;
+    }
   }
 
   @Override
   public boolean hasNext() {
-    while (currentIndex < children.size() && 
!children.get(currentIndex).hasNext()) {
-      currentIndex++;
-    }
     return currentIndex < children.size();
   }
 

Reply via email to