pgsql: Implement the DO statement to support execution of PL code - Mailing list pgsql-committers
From | tgl@postgresql.org (Tom Lane) |
---|---|
Subject | pgsql: Implement the DO statement to support execution of PL code |
Date | |
Msg-id | 20090922234343.B4246753FB7@cvs.postgresql.org Whole thread Raw |
List | pgsql-committers |
Log Message: ----------- Implement the DO statement to support execution of PL code without having to create a function for it. Procedural languages now have an additional entry point, namely a function to execute an inline code block. This seemed a better design than trying to hide the transient-ness of the code from the PL. As of this patch, only plpgsql has an inline handler, but probably people will soon write handlers for the other standard PLs. In passing, remove the long-dead LANCOMPILER option of CREATE LANGUAGE. Petr Jelinek Modified Files: -------------- pgsql/doc/src/sgml: catalogs.sgml (r2.206 -> r2.207) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/catalogs.sgml?r1=2.206&r2=2.207) config.sgml (r1.228 -> r1.229) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/config.sgml?r1=1.228&r2=1.229) keywords.sgml (r2.25 -> r2.26) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/keywords.sgml?r1=2.25&r2=2.26) reference.sgml (r1.67 -> r1.68) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/reference.sgml?r1=1.67&r2=1.68) xplang.sgml (r1.34 -> r1.35) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/xplang.sgml?r1=1.34&r2=1.35) pgsql/doc/src/sgml/ref: allfiles.sgml (r1.74 -> r1.75) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/ref/allfiles.sgml?r1=1.74&r2=1.75) create_language.sgml (r1.45 -> r1.46) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/ref/create_language.sgml?r1=1.45&r2=1.46) pgsql/src/backend/catalog: pg_proc.c (r1.164 -> r1.165) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_proc.c?r1=1.164&r2=1.165) pgsql/src/backend/commands: functioncmds.c (r1.110 -> r1.111) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/functioncmds.c?r1=1.110&r2=1.111) proclang.c (r1.86 -> r1.87) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/proclang.c?r1=1.86&r2=1.87) pgsql/src/backend/nodes: copyfuncs.c (r1.437 -> r1.438) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/copyfuncs.c?r1=1.437&r2=1.438) equalfuncs.c (r1.360 -> r1.361) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/equalfuncs.c?r1=1.360&r2=1.361) pgsql/src/backend/parser: gram.y (r2.678 -> r2.679) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/gram.y?r1=2.678&r2=2.679) pgsql/src/backend/tcop: utility.c (r1.313 -> r1.314) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/tcop/utility.c?r1=1.313&r2=1.314) pgsql/src/backend/utils/misc: guc.c (r1.518 -> r1.519) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/misc/guc.c?r1=1.518&r2=1.519) postgresql.conf.sample (r1.266 -> r1.267) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/misc/postgresql.conf.sample?r1=1.266&r2=1.267) pgsql/src/bin/pg_dump: pg_dump.c (r1.547 -> r1.548) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/bin/pg_dump/pg_dump.c?r1=1.547&r2=1.548) pg_dump.h (r1.156 -> r1.157) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/bin/pg_dump/pg_dump.h?r1=1.156&r2=1.157) pgsql/src/bin/scripts: droplang.c (r1.31 -> r1.32) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/bin/scripts/droplang.c?r1=1.31&r2=1.32) pgsql/src/include/catalog: catversion.h (r1.538 -> r1.539) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h?r1=1.538&r2=1.539) pg_language.h (r1.34 -> r1.35) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_language.h?r1=1.34&r2=1.35) pg_pltemplate.h (r1.7 -> r1.8) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_pltemplate.h?r1=1.7&r2=1.8) pgsql/src/include/commands: defrem.h (r1.96 -> r1.97) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/commands/defrem.h?r1=1.96&r2=1.97) pgsql/src/include/nodes: nodes.h (r1.225 -> r1.226) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/nodes.h?r1=1.225&r2=1.226) parsenodes.h (r1.401 -> r1.402) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/parsenodes.h?r1=1.401&r2=1.402) pgsql/src/include/parser: kwlist.h (r1.2 -> r1.3) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/parser/kwlist.h?r1=1.2&r2=1.3) pgsql/src/include/utils: guc.h (r1.104 -> r1.105) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/guc.h?r1=1.104&r2=1.105) pgsql/src/interfaces/ecpg/preproc: ecpg.trailer (r1.11 -> r1.12) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/interfaces/ecpg/preproc/ecpg.trailer?r1=1.11&r2=1.12) pgsql/src/pl/plpgsql/src: pl_comp.c (r1.138 -> r1.139) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/pl_comp.c?r1=1.138&r2=1.139) pl_handler.c (r1.45 -> r1.46) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/pl_handler.c?r1=1.45&r2=1.46) plpgsql.h (r1.115 -> r1.116) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/plpgsql.h?r1=1.115&r2=1.116) pgsql/src/test/regress/expected: plpgsql.out (r1.73 -> r1.74) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/plpgsql.out?r1=1.73&r2=1.74) pgsql/src/test/regress/sql: plpgsql.sql (r1.61 -> r1.62) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/plpgsql.sql?r1=1.61&r2=1.62) Added Files: ----------- pgsql/doc/src/sgml/ref: do.sgml (r1.1) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/ref/do.sgml?rev=1.1&content-type=text/x-cvsweb-markup)
pgsql-committers by date: