From 41b54ba78e8c4d64679ba4daf82e4e2efefe1922 Mon Sep 17 00:00:00 2001 From: Robert Haas Date: Fri, 29 Mar 2019 08:22:49 -0400 Subject: Allow existing VACUUM options to take a Boolean argument. This makes VACUUM work more like EXPLAIN already does without changing the meaning of any commands that already work. It is intended to facilitate the addition of future VACUUM options that may take non-Boolean parameters or that default to false. Masahiko Sawada, reviewed by me. Discussion: http://postgr.es/m/CA+TgmobpYrXr5sUaEe_T0boabV0DSm=utSOZzwCUNqfLEEm8Mw@mail.gmail.com Discussion: http://postgr.es/m/CAD21AoBaFcKBAeL5_++j+Vzir2vBBcF4juW7qH8b3HsQY=Q6+w@mail.gmail.com --- src/backend/parser/gram.y | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/backend/parser') diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index d711f9a7368..28f62de97e5 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -309,6 +309,7 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query); %type vac_analyze_option_name %type vac_analyze_option_elem %type vac_analyze_option_list +%type vac_analyze_option_arg %type opt_or_replace opt_grant_grant_option opt_grant_admin_option opt_nowait opt_if_exists opt_with_data @@ -10543,9 +10544,9 @@ analyze_keyword: ; vac_analyze_option_elem: - vac_analyze_option_name + vac_analyze_option_name vac_analyze_option_arg { - $$ = makeDefElem($1, NULL, @1); + $$ = makeDefElem($1, $2, @1); } ; @@ -10554,6 +10555,11 @@ vac_analyze_option_name: | analyze_keyword { $$ = "analyze"; } ; +vac_analyze_option_arg: + opt_boolean_or_string { $$ = (Node *) makeString($1); } + | /* EMPTY */ { $$ = NULL; } + ; + opt_analyze: analyze_keyword { $$ = true; } | /*EMPTY*/ { $$ = false; } -- cgit v1.2.3