postgrespro.git / summary / log / commit / refs
commit c7d65a252cdb7219deb48899fa643c5fd2cc3877
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: Wed May 20 00:09:59 2020 +0000
part_strategy does not need its very own keyword classification.
This should be plain old ColId. Making it so makes the grammar less
complicated, and makes the compiled tables a kilobyte or so smaller
(likely because they don't have to deal with a keyword classification
that's not used anyplace else).
src/backend/parser/gram.y | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y
index a24b30f06f..e66b850e1a 100644
--- a/src/backend/parser/gram.y
+++ b/src/backend/parser/gram.y
@@ -595,7 +595,6 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query);
%type <boolean> opt_if_not_exists
%type <ival> generated_when override_kind
%type <partspec> PartitionSpec OptPartitionSpec
-%type <str> part_strategy
%type <partelem> part_elem
%type <list> part_params
%type <partboundspec> PartitionBoundSpec
@@ -3894,7 +3893,7 @@ OptPartitionSpec: PartitionSpec { $$ = $1; }
| /*EMPTY*/ { $$ = NULL; }
;
-PartitionSpec: PARTITION BY part_strategy '(' part_params ')'
+PartitionSpec: PARTITION BY ColId '(' part_params ')'
{
PartitionSpec *n = makeNode(PartitionSpec);
@@ -3906,10 +3905,6 @@ PartitionSpec: PARTITION BY part_strategy '(' part_params ')'
}
;
-part_strategy: IDENT { $$ = $1; }
- | unreserved_keyword { $$ = pstrdup($1); }
- ;
-
part_params: part_elem { $$ = list_make1($1); }
| part_params ',' part_elem { $$ = lappend($1, $3); }
;
[parent: 67b0b2dbf947]