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

jackietien pushed a commit to branch rel/1.1
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/rel/1.1 by this push:
     new 55c6e464a3b [To rel/1.1] update tokens in IdentifierParser
55c6e464a3b is described below

commit 55c6e464a3b79b3a446ce9074780983692c8dada
Author: Liao Lanyu <[email protected]>
AuthorDate: Thu Jul 13 09:13:18 2023 +0800

    [To rel/1.1] update tokens in IdentifierParser
---
 .../org/apache/iotdb/db/qp/sql/IdentifierParser.g4   |  5 +++++
 .../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4     | 20 ++++++++++++++++----
 .../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4    | 18 ++++++++++++------
 .../db/it/IoTDBSyntaxConventionIdentifierIT.java     | 12 ++++++++++++
 .../apache/iotdb/db/mpp/plan/parser/ASTVisitor.java  |  2 +-
 5 files changed, 46 insertions(+), 11 deletions(-)

diff --git 
a/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IdentifierParser.g4 
b/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IdentifierParser.g4
index a82da138e68..1f90e05b1c4 100644
--- a/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IdentifierParser.g4
+++ b/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IdentifierParser.g4
@@ -47,6 +47,7 @@ keyWords
     | ATTRIBUTES
     | BEFORE
     | BEGIN
+    | BETWEEN
     | BLOCKED
     | BOUNDARY
     | BY
@@ -103,10 +104,12 @@ keyWords
     | GRANT
     | GROUP
     | HAVING
+    | IN
     | INDEX
     | INFO
     | INSERT
     | INTO
+    | IS
     | KILL
     | LABEL
     | LAST
@@ -160,6 +163,7 @@ keyWords
     | RANGE
     | READONLY
     | REGEXP
+    | REGION
     | REGIONID
     | REGIONS
     | REMOVE
@@ -190,6 +194,7 @@ keyWords
     | TAGS
     | TASK
     | TEMPLATE
+    | TEMPLATES
     | TIMEOUT
     | TIMESERIES
     | TIMEPARTITION
diff --git a/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 
b/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4
index a34c1275bdb..712b99971ea 100644
--- a/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4
+++ b/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4
@@ -377,7 +377,7 @@ showSchemaTemplates
 
 // Show Measurements In Schema Template
 showNodesInSchemaTemplate
-    : SHOW NODES OPERATOR_IN SCHEMA TEMPLATE templateName=identifier
+    : SHOW NODES operator_in SCHEMA TEMPLATE templateName=identifier
     ;
 
 // Show Paths Set Schema Template
@@ -957,9 +957,9 @@ expression
     | leftExpression=expression (PLUS | MINUS) rightExpression=expression
     | leftExpression=expression (OPERATOR_GT | OPERATOR_GTE | OPERATOR_LT | 
OPERATOR_LTE | OPERATOR_SEQ | OPERATOR_DEQ | OPERATOR_NEQ) 
rightExpression=expression
     | unaryBeforeRegularOrLikeExpression=expression operator_not? (REGEXP | 
LIKE) STRING_LITERAL
-    | firstExpression=expression operator_not? OPERATOR_BETWEEN 
secondExpression=expression operator_and thirdExpression=expression
-    | unaryBeforeIsNullExpression=expression OPERATOR_IS operator_not? 
null_literal
-    | unaryBeforeInExpression=expression operator_not? (OPERATOR_IN | 
operator_contains) LR_BRACKET constant (COMMA constant)* RR_BRACKET
+    | firstExpression=expression operator_not? operator_between 
secondExpression=expression operator_and thirdExpression=expression
+    | unaryBeforeIsNullExpression=expression operator_is operator_not? 
null_literal
+    | unaryBeforeInExpression=expression operator_not? (operator_in | 
operator_contains) LR_BRACKET constant (COMMA constant)* RR_BRACKET
     | leftExpression=expression operator_and rightExpression=expression
     | leftExpression=expression operator_or rightExpression=expression
     ;
@@ -999,6 +999,18 @@ operator_contains
     : CONTAINS
     ;
     
+operator_between
+    : BETWEEN
+    ;
+
+operator_is
+    : IS
+    ;
+
+operator_in
+    : IN
+    ;
+    
 null_literal
     : NULL
     ;
diff --git a/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4 
b/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4
index 489455c2df8..153d2b85afd 100644
--- a/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4
+++ b/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4
@@ -97,6 +97,10 @@ BEGIN
     : B E G I N
     ;
 
+BETWEEN
+    : B E T W E E N
+    ;
+
 BLOCKED
     : B L O C K E D
     ;
@@ -314,6 +318,10 @@ HAVING
     : H A V I N G
     ;
 
+IN
+    : I N
+    ;
+
 INDEX
     : I N D E X
     ;
@@ -330,6 +338,10 @@ INTO
     : I N T O
     ;
 
+IS
+    : I S
+    ;
+
 KILL
     : K I L L
     ;
@@ -982,12 +994,6 @@ OPERATOR_LT : '<';
 OPERATOR_LTE : '<=';
 OPERATOR_NEQ : '!=' | '<>';
 
-OPERATOR_BETWEEN : B E T W E E N;
-
-OPERATOR_IS : I S;
-
-OPERATOR_IN : I N;
-
 OPERATOR_BITWISE_AND : '&';
 
 OPERATOR_LOGICAL_AND : '&&';
diff --git 
a/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBSyntaxConventionIdentifierIT.java
 
b/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBSyntaxConventionIdentifierIT.java
index 15fee230b26..9b540c38363 100644
--- 
a/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBSyntaxConventionIdentifierIT.java
+++ 
b/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBSyntaxConventionIdentifierIT.java
@@ -145,6 +145,9 @@ public class IoTDBSyntaxConventionIdentifierIT {
     String[] createNodeNames = {
       "a_1",
       "aaa",
+      "in",
+      "between",
+      "is",
       "`select`",
       "`a.b`",
       "`111`",
@@ -172,6 +175,9 @@ public class IoTDBSyntaxConventionIdentifierIT {
     String[] resultTimeseries = {
       "root.sg1.d1.a_1",
       "root.sg1.d1.aaa",
+      "root.sg1.d1.in",
+      "root.sg1.d1.between",
+      "root.sg1.d1.is",
       "root.sg1.d1.select",
       "root.sg1.d1.`a.b`",
       "root.sg1.d1.`111`",
@@ -199,6 +205,9 @@ public class IoTDBSyntaxConventionIdentifierIT {
     String[] selectNodeNames = {
       "a_1",
       "aaa",
+      "in",
+      "between",
+      "is",
       "`select`",
       "`a.b`",
       "`111`",
@@ -226,6 +235,9 @@ public class IoTDBSyntaxConventionIdentifierIT {
     String[] suffixInResultColumns = {
       "a_1",
       "aaa",
+      "in",
+      "between",
+      "is",
       "select",
       "`a.b`",
       "`111`",
diff --git 
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/ASTVisitor.java 
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/ASTVisitor.java
index 0408e655f07..c64b16634be 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/ASTVisitor.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/ASTVisitor.java
@@ -2285,7 +2285,7 @@ public class ASTVisitor extends 
IoTDBSqlParserBaseVisitor<Statement> {
       Expression secondExpression = parseExpression(context.secondExpression, 
canUseFullPath);
       Expression thirdExpression = parseExpression(context.thirdExpression, 
canUseFullPath);
 
-      if (context.OPERATOR_BETWEEN() != null) {
+      if (context.operator_between() != null) {
         return new BetweenExpression(
             firstExpression, secondExpression, thirdExpression, 
context.operator_not() != null);
       }

Reply via email to