This is an automated email from the ASF dual-hosted git repository.
ayushsaxena pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hive.git
The following commit(s) were added to refs/heads/master by this push:
new 00668c66b84 HIVE-28384: Refactor the alter statements to
AlterClauseParser.g from HiveParser.g. (#5752). (Kokila N, reviewed by Ayush
Saxena
00668c66b84 is described below
commit 00668c66b84893e308e485e7f2de7b6e0b92a13a
Author: kokila-19 <[email protected]>
AuthorDate: Thu Apr 10 14:20:08 2025 +0530
HIVE-28384: Refactor the alter statements to AlterClauseParser.g from
HiveParser.g. (#5752). (Kokila N, reviewed by Ayush Saxena
---
.../hadoop/hive/ql/parse/AlterClauseParser.g | 59 +++++++++++++++++++++
.../org/apache/hadoop/hive/ql/parse/HiveParser.g | 61 ----------------------
2 files changed, 59 insertions(+), 61 deletions(-)
diff --git
a/parser/src/java/org/apache/hadoop/hive/ql/parse/AlterClauseParser.g
b/parser/src/java/org/apache/hadoop/hive/ql/parse/AlterClauseParser.g
index d75e6cecab2..7277e97d468 100644
--- a/parser/src/java/org/apache/hadoop/hive/ql/parse/AlterClauseParser.g
+++ b/parser/src/java/org/apache/hadoop/hive/ql/parse/AlterClauseParser.g
@@ -651,3 +651,62 @@ alterDataConnectorSuffixSetUrl
-> ^(TOK_ALTERDATACONNECTOR_URL $dcName $newUri)
;
+alterScheduledQueryStatement
+@init { gParent.pushMsg("alter scheduled query statement", state); }
+@after { gParent.popMsg(state); }
+ : KW_ALTER KW_SCHEDULED KW_QUERY name=identifier
+ mod=alterScheduledQueryChange
+ -> ^(TOK_ALTER_SCHEDULED_QUERY
+ $name
+ $mod
+ )
+ ;
+
+alterScheduledQueryChange
+@init { gParent.pushMsg("alter scheduled query change", state); }
+@after { gParent.popMsg(state); }
+ : scheduleSpec
+ | executedAsSpec
+ | enableSpecification
+ | definedAsSpec
+ | KW_EXECUTE -> ^(TOK_EXECUTE)
+ ;
+
+alterColumnConstraint[CommonTree fkColName]
+@init { gParent.pushMsg("alter column constraint", state); }
+@after { gParent.popMsg(state); }
+ : ( alterForeignKeyConstraint[$fkColName] )
+ | ( alterColConstraint )
+ ;
+
+alterForeignKeyConstraint[CommonTree fkColName]
+@init { gParent.pushMsg("alter column constraint", state); }
+@after { gParent.popMsg(state); }
+ : (KW_CONSTRAINT constraintName=identifier)? KW_REFERENCES
tabName=tableName LPAREN colName=columnName RPAREN constraintOptsAlter?
+ -> {$constraintName.tree != null}?
+ ^(TOK_FOREIGN_KEY ^(TOK_CONSTRAINT_NAME $constraintName)
^(TOK_TABCOLNAME {$fkColName}) $tabName ^(TOK_TABCOLNAME $colName)
constraintOptsAlter?)
+ -> ^(TOK_FOREIGN_KEY ^(TOK_TABCOLNAME {$fkColName}) $tabName
^(TOK_TABCOLNAME $colName) constraintOptsAlter?)
+ ;
+
+alterColConstraint
+@init { gParent.pushMsg("alter column constraint", state); }
+@after { gParent.popMsg(state); }
+ : (KW_CONSTRAINT constraintName=identifier)? columnConstraintType
constraintOptsAlter?
+ -> {$constraintName.tree != null}?
+ ^({$columnConstraintType.tree} ^(TOK_CONSTRAINT_NAME
$constraintName) constraintOptsAlter?)
+ -> ^({$columnConstraintType.tree} constraintOptsAlter?)
+ ;
+
+alterConstraintWithName
+@init { gParent.pushMsg("pk or uk or nn constraint with name", state); }
+@after { gParent.popMsg(state); }
+ : KW_CONSTRAINT constraintName=identifier tableLevelConstraint
constraintOptsAlter?
+ ->^({$tableLevelConstraint.tree} ^(TOK_CONSTRAINT_NAME $constraintName)
constraintOptsAlter?)
+ ;
+
+alterForeignKeyWithName
+@init { gParent.pushMsg("foreign key with key name", state); }
+@after { gParent.popMsg(state); }
+ : KW_CONSTRAINT constraintName=identifier KW_FOREIGN KW_KEY
fkCols=columnParenthesesList KW_REFERENCES tabName=tableName
parCols=columnParenthesesList constraintOptsAlter?
+ -> ^(TOK_FOREIGN_KEY ^(TOK_CONSTRAINT_NAME $constraintName) $fkCols
$tabName $parCols constraintOptsAlter?)
+ ;
diff --git a/parser/src/java/org/apache/hadoop/hive/ql/parse/HiveParser.g
b/parser/src/java/org/apache/hadoop/hive/ql/parse/HiveParser.g
index 1f7acf2f7dd..44645bccc1a 100644
--- a/parser/src/java/org/apache/hadoop/hive/ql/parse/HiveParser.g
+++ b/parser/src/java/org/apache/hadoop/hive/ql/parse/HiveParser.g
@@ -1744,28 +1744,6 @@ dropScheduledQueryStatement
)
;
-
-alterScheduledQueryStatement
-@init { pushMsg("alter scheduled query statement", state); }
-@after { popMsg(state); }
- : KW_ALTER KW_SCHEDULED KW_QUERY name=identifier
- mod=alterScheduledQueryChange
- -> ^(TOK_ALTER_SCHEDULED_QUERY
- $name
- $mod
- )
- ;
-
-alterScheduledQueryChange
-@init { pushMsg("alter scheduled query change", state); }
-@after { popMsg(state); }
- : scheduleSpec
- | executedAsSpec
- | enableSpecification
- | definedAsSpec
- | KW_EXECUTE -> ^(TOK_EXECUTE)
- ;
-
scheduleSpec
@init { pushMsg("schedule specification", state); }
@after { popMsg(state); }
@@ -2145,13 +2123,6 @@ createConstraint
-> ^({$tableLevelConstraint.tree} constraintOptsCreate?)
;
-alterConstraintWithName
-@init { pushMsg("pk or uk or nn constraint with name", state); }
-@after { popMsg(state); }
- : KW_CONSTRAINT constraintName=identifier tableLevelConstraint
constraintOptsAlter?
- ->^({$tableLevelConstraint.tree} ^(TOK_CONSTRAINT_NAME $constraintName)
constraintOptsAlter?)
- ;
-
tableLevelConstraint
: pkUkConstraint
| checkConstraint
@@ -2180,13 +2151,6 @@ createForeignKey
-> ^(TOK_FOREIGN_KEY $fkCols $tabName $parCols constraintOptsCreate?)
;
-alterForeignKeyWithName
-@init { pushMsg("foreign key with key name", state); }
-@after { popMsg(state); }
- : KW_CONSTRAINT constraintName=identifier KW_FOREIGN KW_KEY
fkCols=columnParenthesesList KW_REFERENCES tabName=tableName
parCols=columnParenthesesList constraintOptsAlter?
- -> ^(TOK_FOREIGN_KEY ^(TOK_CONSTRAINT_NAME $constraintName) $fkCols
$tabName $parCols constraintOptsAlter?)
- ;
-
skewedValueElement
@init { pushMsg("skewed value element", state); }
@after { popMsg(state); }
@@ -2366,31 +2330,6 @@ colConstraint
-> ^({$columnConstraintType.tree} constraintOptsCreate?)
;
-alterColumnConstraint[CommonTree fkColName]
-@init { pushMsg("alter column constraint", state); }
-@after { popMsg(state); }
- : ( alterForeignKeyConstraint[$fkColName] )
- | ( alterColConstraint )
- ;
-
-alterForeignKeyConstraint[CommonTree fkColName]
-@init { pushMsg("alter column constraint", state); }
-@after { popMsg(state); }
- : (KW_CONSTRAINT constraintName=identifier)? KW_REFERENCES
tabName=tableName LPAREN colName=columnName RPAREN constraintOptsAlter?
- -> {$constraintName.tree != null}?
- ^(TOK_FOREIGN_KEY ^(TOK_CONSTRAINT_NAME $constraintName)
^(TOK_TABCOLNAME {$fkColName}) $tabName ^(TOK_TABCOLNAME $colName)
constraintOptsAlter?)
- -> ^(TOK_FOREIGN_KEY ^(TOK_TABCOLNAME {$fkColName}) $tabName
^(TOK_TABCOLNAME $colName) constraintOptsAlter?)
- ;
-
-alterColConstraint
-@init { pushMsg("alter column constraint", state); }
-@after { popMsg(state); }
- : (KW_CONSTRAINT constraintName=identifier)? columnConstraintType
constraintOptsAlter?
- -> {$constraintName.tree != null}?
- ^({$columnConstraintType.tree} ^(TOK_CONSTRAINT_NAME
$constraintName) constraintOptsAlter?)
- -> ^({$columnConstraintType.tree} constraintOptsAlter?)
- ;
-
columnConstraintType
: KW_NOT KW_NULL -> TOK_NOT_NULL
| KW_DEFAULT defaultVal-> ^(TOK_DEFAULT_VALUE defaultVal)