Thread: pgsql: Do parse analysis of an EXPLAIN's contained statement during the
pgsql: Do parse analysis of an EXPLAIN's contained statement during the
From
tgl@postgresql.org (Tom Lane)
Date:
Log Message: ----------- Do parse analysis of an EXPLAIN's contained statement during the normal parse analysis phase, rather than at execution time. This makes parameter handling work the same as it does in ordinary plannable queries, and in particular fixes the incompatibility that Pavel pointed out with plpgsql's new handling of variable references. plancache.c gets a little bit grottier, but the alternatives seem worse. Modified Files: -------------- pgsql/src/backend/commands: explain.c (r1.198 -> r1.199) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/explain.c?r1=1.198&r2=1.199) pgsql/src/backend/nodes: params.c (r1.13 -> r1.14) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/params.c?r1=1.13&r2=1.14) pgsql/src/backend/optimizer/plan: setrefs.c (r1.156 -> r1.157) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/setrefs.c?r1=1.156&r2=1.157) pgsql/src/backend/parser: analyze.c (r1.399 -> r1.400) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/analyze.c?r1=1.399&r2=1.400) pgsql/src/backend/tcop: utility.c (r1.328 -> r1.329) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/tcop/utility.c?r1=1.328&r2=1.329) pgsql/src/backend/utils/cache: plancache.c (r1.33 -> r1.34) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/cache/plancache.c?r1=1.33&r2=1.34) pgsql/src/include/nodes: params.h (r1.40 -> r1.41) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/params.h?r1=1.40&r2=1.41) parsenodes.h (r1.423 -> r1.424) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/parsenodes.h?r1=1.423&r2=1.424) pgsql/src/include/optimizer: planmain.h (r1.123 -> r1.124) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/planmain.h?r1=1.123&r2=1.124)