Обсуждение: 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: ---- REL8_4_STABLE Modified Files: -------------- pgsql/src/pl/plpgsql/src: pl_exec.c (r1.244.2.6 -> r1.244.2.7) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/pl_exec.c?r1=1.244.2.6&r2=1.244.2.7) pgsql/src/test/regress/expected: plpgsql.out (r1.71 -> r1.71.2.1) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/plpgsql.out?r1=1.71&r2=1.71.2.1) pgsql/src/test/regress/sql: plpgsql.sql (r1.60 -> r1.60.2.1) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/plpgsql.sql?r1=1.60&r2=1.60.2.1)