Обсуждение: pgsql: Fix incorrect logic in plpgsql for cleanup after evaluation of
pgsql: Fix incorrect logic in plpgsql for cleanup after evaluation of
От
tgl@postgresql.org (Tom Lane)
Дата:
Log Message:
-----------
Fix incorrect logic in plpgsql for cleanup after evaluation of non-simple
expressions. We need to deal with this when handling subscripts in an array
assignment, and also when catching an exception. In an Assert-enabled build
these omissions led to Assert failures, but I think in a normal build the
only consequence would be short-term memory leakage; which may explain why
this wasn't reported from the field long ago.
Back-patch to all supported versions. 7.4 doesn't have exceptions, but
otherwise these bugs go all the way back.
Heikki Linnakangas and Tom Lane
Tags:
----
REL7_4_STABLE
Modified Files:
--------------
pgsql/src/pl/plpgsql/src:
pl_exec.c (r1.93.2.4 -> r1.93.2.5)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/pl_exec.c?r1=1.93.2.4&r2=1.93.2.5)
pgsql/src/test/regress/expected:
plpgsql.out (r1.16 -> r1.16.2.1)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/plpgsql.out?r1=1.16&r2=1.16.2.1)
pgsql/src/test/regress/sql:
plpgsql.sql (r1.11 -> r1.11.4.1)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/plpgsql.sql?r1=1.11&r2=1.11.4.1)