pgsql: Fix freshly-introduced PL/Python portability bug. - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Fix freshly-introduced PL/Python portability bug.
Date
Msg-id E1apk9J-00011s-E4@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix freshly-introduced PL/Python portability bug.

It turns out that those PyErr_Clear() calls I removed from plpy_elog.c
in 7e3bb080387f4143 et al were not quite as random as they appeared: they
mask a Python 2.3.x bug.  (Specifically, it turns out that PyType_Ready()
can fail if the error indicator is set on entry, and PLy_traceback's fetch
of frame.f_code may be the first operation in a session that requires the
"frame" type to be readied.  Ick.)  Put back the clear call, but in a more
centralized place closer to what it's protecting, and this time with a
comment warning what it's really for.

Per buildfarm member prairiedog.  Although prairiedog was only failing
on HEAD, it seems clearly possible for this to occur in older branches
as well, so back-patch to 9.2 the same as the previous patch.

Branch
------
REL9_5_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/8207c6baf8b42085bef442178ce8721ea726d9c7

Modified Files
--------------
src/pl/plpython/plpy_elog.c | 6 ++++++
1 file changed, 6 insertions(+)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Fix freshly-introduced PL/Python portability bug.
Next
From: Tom Lane
Date:
Subject: pgsql: Fix two places that thought Windows64 is indicated by WIN64 macr