postgres.git / summary / log / commit / refs
commit 53eb835578536bcbb0c02ef1e1d5051ca8029285
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: Wed Jun 05 17:32:53 2013 +0000
First released in: 9.3.0, 9.0.14, 9.1.10, 9.2.5
Put analyze_keyword back in explain_option_name production.
In commit 2c92edad48796119c83d7dbe6c33425d1924626d, I broke "EXPLAIN
(ANALYZE)" syntax, because I mistakenly thought that ANALYZE/ANALYSE were
only partially reserved and thus would be included in NonReservedWord;
but actually they're fully reserved so they still need to be called out
here.
A nicer solution would be to demote these words to type_func_name_keyword
status (they can't be less than that because of "VACUUM [ANALYZE] ColId").
While that works fine so far as the core grammar is concerned, it breaks
ECPG's grammar for reasons I don't have time to isolate at the moment.
So do this for the time being.
Per report from Kevin Grittner. Back-patch to 9.0, like the previous
commit.
src/backend/parser/gram.y | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y
index a8ff1d1ce46..3df7c046445 100644
--- a/src/backend/parser/gram.y
+++ b/src/backend/parser/gram.y
@@ -6980,6 +6980,7 @@ explain_option_elem:
explain_option_name:
NonReservedWord { $$ = $1; }
+ | analyze_keyword { $$ = "analyze"; }
;
explain_option_arg:
[parent: c28bfb35ef6c]