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]