pgsql: Add control knobs for plpgsql's variable resolution behavior, and

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Add control knobs for plpgsql's variable resolution behavior, and
Date: 2009-11-13 22:43:43
Message-ID: 20091113224343.09992753FB7@cvs.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Add control knobs for plpgsql's variable resolution behavior, and make the
default be "throw error on conflict", as per discussions. The GUC variable
is plpgsql.variable_conflict, with values "error", "use_variable",
"use_column". The behavior can also be specified per-function by inserting
one of
#variable_conflict error
#variable_conflict use_variable
#variable_conflict use_column
at the start of the function body.

The 8.5 release notes will need to mention using "use_variable" to retain
backward-compatible behavior, although we should encourage people to migrate
to the much less mistake-prone "error" setting.

Update the plpgsql documentation to match this and other recent changes.

Modified Files:
--------------
pgsql/doc/src/sgml:
config.sgml (r1.232 -> r1.233)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/config.sgml?r1=1.232&r2=1.233)
plpgsql.sgml (r1.146 -> r1.147)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/plpgsql.sgml?r1=1.146&r2=1.147)
pgsql/src/pl/plpgsql/src:
gram.y (r1.135 -> r1.136)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/gram.y?r1=1.135&r2=1.136)
pl_comp.c (r1.145 -> r1.146)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/pl_comp.c?r1=1.145&r2=1.146)
pl_handler.c (r1.47 -> r1.48)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/pl_handler.c?r1=1.47&r2=1.48)
pl_scanner.c (r1.1 -> r1.2)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/pl_scanner.c?r1=1.1&r2=1.2)
plpgsql.h (r1.124 -> r1.125)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/plpgsql.h?r1=1.124&r2=1.125)
pgsql/src/test/regress/expected:
plpgsql.out (r1.81 -> r1.82)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/plpgsql.out?r1=1.81&r2=1.82)
pgsql/src/test/regress/sql:
plpgsql.sql (r1.68 -> r1.69)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/plpgsql.sql?r1=1.68&r2=1.69)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2009-11-13 23:44:19 pgsql: Avoid assuming that enum CreateStmtLikeOption is unsigned.
Previous Message Heikki Linnakangas 2009-11-13 19:48:26 pgsql: A better fix for the "ARRAY[...]::domain" problem.