Thread: Re: [COMMITTERS] pgsql: Remove ill-considered suppression of gcc warnings in plperl, and
Re: [COMMITTERS] pgsql: Remove ill-considered suppression of gcc warnings in plperl, and
From
Tom Lane
Date:
Michael Fuhr <mike@fuhr.org> writes: > On Wed, Nov 17, 2004 at 09:23:37PM +0000, Tom Lane wrote: >> Remove ill-considered suppression of gcc warnings in plperl, and fix >> some of the bugs exposed thereby. > These changes may not have targeted the problem mentioned in the > "plperl crashes backend" thread in pgsql-bugs, but I'll report that > they didn't fix it. Yeah, I know. I had just done that in the slight hope that more warnings would pinpoint the error. They didn't, but I figured I'd commit what I had anyway. I still think there are some broken combinations exposed by the remaining warnings, but they are not combinations exercised by the failing test case. BTW, on my machine your test case does NOT fail if you declare the function as plperlu instead of plperl. Same for you? It's clearly a memory clobber problem; once I got this: WARNING: problem in alloc set pg_depend_reference_index: req size > alloc size for chunk 0x94429d0 in block 0x94429c0 WARNING: problem in alloc set pg_depend_reference_index: bad single-chunk 0x94429d0 in block 0x94429c0 WARNING: problem in alloc set pg_depend_reference_index: bogus aset link in block 0x94429c0, chunk 0x94429d0 WARNING: problem in alloc set pg_depend_reference_index: found inconsistent memory block 0x94429c0 WARNING: problem in alloc set pg_depend_reference_index: found inconsistent memory block 0x94f6918 I have not been able to reproduce that, which is too bad because it would've provided a place to set a debugger watchpoint and catch the clobber in the act. regards, tom lane
Re: [COMMITTERS] pgsql: Remove ill-considered suppression of gcc warnings in plperl, and
From
Michael Fuhr
Date:
On Wed, Nov 17, 2004 at 08:34:37PM -0500, Tom Lane wrote: > BTW, on my machine your test case does NOT fail if you declare the > function as plperlu instead of plperl. Same for you? Yep: with plperlu I don't get the crash, neither on FreeBSD nor on Solaris, at least not for arrays with up to one million elements. -- Michael Fuhr http://www.fuhr.org/~mfuhr/