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

qiaojialin pushed a commit to branch skip_error_mlog
in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git

commit 0a61965defc8bd6bc115254363f8a3b798f84018
Author: qiaojialin <[email protected]>
AuthorDate: Tue Apr 21 16:26:13 2020 +0800

    skip error mlog
---
 server/src/main/java/org/apache/iotdb/db/metadata/MManager.java    | 6 +++++-
 .../java/org/apache/iotdb/db/qp/executor/QueryProcessExecutor.java | 7 +++++++
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/server/src/main/java/org/apache/iotdb/db/metadata/MManager.java 
b/server/src/main/java/org/apache/iotdb/db/metadata/MManager.java
index cc9922a..5f5d200 100644
--- a/server/src/main/java/org/apache/iotdb/db/metadata/MManager.java
+++ b/server/src/main/java/org/apache/iotdb/db/metadata/MManager.java
@@ -174,7 +174,11 @@ public class MManager {
           BufferedReader br = new BufferedReader(fr)) {
         String cmd;
         while ((cmd = br.readLine()) != null) {
-          operation(cmd);
+          try {
+            operation(cmd);
+          } catch (Exception e) {
+            logger.error("Skip error cmd log: " + cmd, e);
+          }
         }
       }
     }
diff --git 
a/server/src/main/java/org/apache/iotdb/db/qp/executor/QueryProcessExecutor.java
 
b/server/src/main/java/org/apache/iotdb/db/qp/executor/QueryProcessExecutor.java
index 94669c1..c267a9f 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/qp/executor/QueryProcessExecutor.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/qp/executor/QueryProcessExecutor.java
@@ -81,9 +81,12 @@ import org.apache.iotdb.tsfile.read.expression.IExpression;
 import org.apache.iotdb.tsfile.read.query.dataset.QueryDataSet;
 import org.apache.iotdb.tsfile.utils.Binary;
 import org.apache.iotdb.tsfile.utils.Pair;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class QueryProcessExecutor extends AbstractQueryProcessExecutor {
 
+  private static final Logger logger = 
LoggerFactory.getLogger(QueryProcessExecutor.class);
   private StorageEngine storageEngine;
   private MManager mManager = MManager.getInstance();
 
@@ -244,6 +247,10 @@ public class QueryProcessExecutor extends 
AbstractQueryProcessExecutor {
           }
         }
         MNode measurementNode = node.getChild(measurementList[i]);
+        if (measurementNode == null) {
+          logger.error(measurementList[i] + " is not created under " + 
node.getFullPath());
+          throw new PathException(measurementList[i] + " is not created under 
" + node.getFullPath());
+        }
         if (!measurementNode.isLeaf()) {
           throw new QueryProcessException(
               String.format("Current Path is not leaf node. %s.%s", deviceId,

Reply via email to