postgres.git / summary / log / commit / refs
commit 940a85e5e1c32d479d43df89c410195063e786d2
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 6e9efef716d..5f80fe057bc 100644
--- a/src/backend/parser/gram.y
+++ b/src/backend/parser/gram.y
@@ -7920,6 +7920,7 @@ explain_option_elem:
explain_option_name:
NonReservedWord { $$ = $1; }
+ | analyze_keyword { $$ = "analyze"; }
;
explain_option_arg:
[parent: f94979f618ab]