I wrote:
> Peter Eisentraut <peter_e@gmx.net> writes:
>> It does pass the tests for me and others. If you are seeing something
>> different, then we need to see some details, like what platform, what
>> version, what Python version, how installed, what PostgreSQL version,
>> how installed, actual diffs, etc.
> After further experimentation, I've found that 2.3 does pass the regression
> tests if one installs the separately-available cdecimal module.
Well ... it passes in C locale, anyway. 9.1 appears to have a problem if
using UTF8 encoding:
http://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=prairiedog&dt=2014-03-19%2017%3A00%3A48
I've had a hard time getting details, since Apple didn't supply debug
symbols for their Python build, but the segfault is definitely happening
down inside PyRun_String() called from plpython_validator(). If you just
fire up a fresh session and execute the troublesome CREATE FUNCTION,
it's fine; which says to me that some previous operation in the
plpython_trigger test script tromped on data structures private to Python.
Our other branches pass on the identical installation. Now, 9.0 didn't
even have a validator, which might just mean that it's failing to trip
over a memory clobber that happened anyway. And 9.2 is so completely
refactored that it's hard to tell whether it incorporates a fix for a
memory clobber compared to 9.1; or maybe it's just accidentally avoiding
the crash symptom, too. But there's something rotten in the state of
Denmark.
regards, tom lane