Last active
September 25, 2025 09:11
-
-
Save divyenduz/7e32495c6840bb9eb888348a9f28ec38 to your computer and use it in GitHub Desktop.
Postgres amen
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y | |
| index 9fd48acb1f8..ce8e7ecb8b7 100644 | |
| --- a/src/backend/parser/gram.y | |
| +++ b/src/backend/parser/gram.y | |
| @@ -698,7 +698,7 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query); | |
| /* ordinary key words in alphabetical order */ | |
| %token <keyword> ABORT_P ABSENT ABSOLUTE_P ACCESS ACTION ADD_P ADMIN AFTER | |
| - AGGREGATE ALL ALSO ALTER ALWAYS ANALYSE ANALYZE AND ANY ARRAY AS ASC | |
| + AGGREGATE ALL ALSO ALTER ALWAYS AMEN ANALYSE ANALYZE AND ANY ARRAY AS ASC | |
| ASENSITIVE ASSERTION ASSIGNMENT ASYMMETRIC ATOMIC AT ATTACH ATTRIBUTE AUTHORIZATION | |
| BACKWARD BEFORE BEGIN_P BETWEEN BIGINT BINARY BIT | |
| @@ -11208,6 +11208,16 @@ TransactionStmt: | |
| n->location = -1; | |
| $$ = (Node *) n; | |
| } | |
| + | AMEN opt_transaction opt_transaction_chain | |
| + { | |
| + TransactionStmt *n = makeNode(TransactionStmt); | |
| + | |
| + n->kind = TRANS_STMT_COMMIT; | |
| + n->options = NIL; | |
| + n->chain = $3; | |
| + n->location = -1; | |
| + $$ = (Node *) n; | |
| + } | |
| | ROLLBACK opt_transaction opt_transaction_chain | |
| { | |
| TransactionStmt *n = makeNode(TransactionStmt); | |
| @@ -17743,6 +17753,7 @@ unreserved_keyword: | |
| | ALSO | |
| | ALTER | |
| | ALWAYS | |
| + | AMEN | |
| | ASENSITIVE | |
| | ASSERTION | |
| | ASSIGNMENT | |
| @@ -18285,6 +18296,7 @@ bare_label_keyword: | |
| | ALSO | |
| | ALTER | |
| | ALWAYS | |
| + | AMEN | |
| | ANALYSE | |
| | ANALYZE | |
| | AND | |
| diff --git a/src/include/parser/kwlist.h b/src/include/parser/kwlist.h | |
| index a4af3f717a1..9659447c738 100644 | |
| --- a/src/include/parser/kwlist.h | |
| +++ b/src/include/parser/kwlist.h | |
| @@ -38,6 +38,7 @@ PG_KEYWORD("all", ALL, RESERVED_KEYWORD, BARE_LABEL) | |
| PG_KEYWORD("also", ALSO, UNRESERVED_KEYWORD, BARE_LABEL) | |
| PG_KEYWORD("alter", ALTER, UNRESERVED_KEYWORD, BARE_LABEL) | |
| PG_KEYWORD("always", ALWAYS, UNRESERVED_KEYWORD, BARE_LABEL) | |
| +PG_KEYWORD("amen", AMEN, UNRESERVED_KEYWORD, BARE_LABEL) | |
| PG_KEYWORD("analyse", ANALYSE, RESERVED_KEYWORD, BARE_LABEL) /* British spelling */ | |
| PG_KEYWORD("analyze", ANALYZE, RESERVED_KEYWORD, BARE_LABEL) | |
| PG_KEYWORD("and", AND, RESERVED_KEYWORD, BARE_LABEL) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment