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

hui pushed a commit to branch lmh/fillCheckDebug
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 1015abafb75493b0dba00c7ea2462e2d7153b8f5
Author: Minghui Liu <[email protected]>
AuthorDate: Fri Jul 1 17:35:17 2022 +0800

    fix datatype check
---
 .../src/main/java/org/apache/iotdb/db/mpp/plan/analyze/Analyzer.java  | 4 ++++
 .../apache/iotdb/db/mpp/plan/statement/literal/BooleanLiteral.java    | 2 +-
 .../org/apache/iotdb/db/mpp/plan/statement/literal/DoubleLiteral.java | 4 +++-
 .../org/apache/iotdb/db/mpp/plan/statement/literal/LongLiteral.java   | 3 ++-
 4 files changed, 10 insertions(+), 3 deletions(-)

diff --git 
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/Analyzer.java 
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/Analyzer.java
index 9885f8b29e..190a245ee1 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/Analyzer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/Analyzer.java
@@ -414,6 +414,10 @@ public class Analyzer {
               }
             }
           } else if (fillComponent.getFillPolicy() == FillPolicy.LINEAR) {
+            if (queryStatement.isAlignByDevice()) {
+              throw new SemanticException("");
+            }
+
             for (Expression fillColumn : fillColumnList) {
               TSDataType checkedDataType = 
typeProvider.getType(fillColumn.getExpressionString());
               if (!checkedDataType.isNumeric()) {
diff --git 
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/literal/BooleanLiteral.java
 
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/literal/BooleanLiteral.java
index 132024e9a0..203badb1de 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/literal/BooleanLiteral.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/literal/BooleanLiteral.java
@@ -54,7 +54,7 @@ public class BooleanLiteral extends Literal {
 
   @Override
   public boolean isDataTypeConsistency(TSDataType dataType) {
-    return dataType == TSDataType.BOOLEAN;
+    return dataType == TSDataType.BOOLEAN || dataType == TSDataType.TEXT;
   }
 
   @Override
diff --git 
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/literal/DoubleLiteral.java
 
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/literal/DoubleLiteral.java
index 508ba4f514..3647f95b15 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/literal/DoubleLiteral.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/literal/DoubleLiteral.java
@@ -53,7 +53,9 @@ public class DoubleLiteral extends Literal {
 
   @Override
   public boolean isDataTypeConsistency(TSDataType dataType) {
-    return dataType == TSDataType.FLOAT || dataType == TSDataType.DOUBLE;
+    return dataType == TSDataType.FLOAT
+        || dataType == TSDataType.DOUBLE
+        || dataType == TSDataType.TEXT;
   }
 
   @Override
diff --git 
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/literal/LongLiteral.java
 
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/literal/LongLiteral.java
index dd9e3c507f..16767f2210 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/literal/LongLiteral.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/literal/LongLiteral.java
@@ -60,7 +60,8 @@ public class LongLiteral extends Literal {
     return dataType == TSDataType.INT32
         || dataType == TSDataType.INT64
         || dataType == TSDataType.FLOAT
-        || dataType == TSDataType.DOUBLE;
+        || dataType == TSDataType.DOUBLE
+        || dataType == TSDataType.TEXT;
   }
 
   @Override

Reply via email to