Re: BUG #5323: plperl and plperlu interaction segfaults

From: Alexey Klyukin <alexk(at)commandprompt(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Dave Olszewski <cxreg(at)pobox(dot)com>, pgsql-bugs(at)postgresql(dot)org, Tim Bunce <Tim(dot)Bunce(at)pobox(dot)com>
Subject: Re: BUG #5323: plperl and plperlu interaction segfaults
Date: 2010-02-12 10:04:44
Message-ID: F5179A8D-B591-41A7-8F55-B3C1D2FEF127@commandprompt.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs


On Feb 12, 2010, at 6:21 AM, Robert Haas wrote:

> On Thu, Feb 11, 2010 at 10:47 PM, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>> On Thu, Feb 11, 2010 at 3:12 PM, Alexey Klyukin <alexk(at)commandprompt(dot)com> wrote:
>>>> I think this might be the same problem previously discussed here:
>>>> http://archives.postgresql.org/pgsql-bugs/2010-01/msg00224.php
>>>
>>> Seems to be the same problem. Backtrace I'm getting on 8.4 is almost identical to the one at the end of this post:
>>> http://archives.postgresql.org/pgsql-bugs/2010-01/msg00144.php
>>>
>>>> Does that patch fix it?
>>> The problem doesn't appear on 9.0 alpha with that patch committed.
>>
>> It looks like the plperl.c change applies cleanly back to 8.2, though
>> I haven't yet verified that it actually fixes the problem on all those
>> branches.
>
>
> Not sure where to go from here. The prerequisite patch ("Various
> small improvements and cleanups for PL/Perl") is not suitable for
> backpatching, so I think someone needs to prepare a cut-down patch
> that addresses this issue in a more surgical fashion. Also, would
> like to understand why the test case fails to fail on CVS HEAD.
>

Andrew Dunstan backpatched all versions down to 8.2 yesterday:
http://archives.postgresql.org/message-id/20100212043203.08C6E7541C6@cvs.postgresql.org

This eliminated the bug on my system (checked on 8.4).
The problem appeared due to the context mismatch between the interpreter that created the reference
to the compiled subroutine and the one that tried to decrement the reference count. Setting a correct context fixed the problem.

--
Alexey Klyukin http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Robert Haas 2010-02-12 15:17:29 Re: BUG #5323: plperl and plperlu interaction segfaults
Previous Message sourabh bansal 2010-02-12 04:45:40 BUG #5324: Server not starting