Re: Missing error_context_stack = NULL in AutoVacWorkerMain() - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Missing error_context_stack = NULL in AutoVacWorkerMain()
Date
Msg-id 6688.1571634110@sss.pgh.pa.us
Whole thread Raw
In response to Re: Missing error_context_stack = NULL in AutoVacWorkerMain()  (Michael Paquier <michael@paquier.xyz>)
List pgsql-hackers
Michael Paquier <michael@paquier.xyz> writes:
> On Mon, Oct 21, 2019 at 12:47:40AM -0400, Tom Lane wrote:
>> This seems like a real and possibly serious bug to me.  Backend sigsetjmp
>> callers *must* clear error_context_stack (or restore it to a previous
>> value), because if it isn't NULL it's surely pointing at garbage, ie a
>> local variable that's no longer part of the valid stack.

> Sure.  From my recollection of memories we never set it in autovacuum
> code paths (including index entry deletions), so I don't think that we
> have an actual live bug here.

Uh ... what about, say, auto-analyze on an expression index?  That
could call user-defined PL functions and thus reach just about all
of the backend.

            regards, tom lane



pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: Missing error_context_stack = NULL in AutoVacWorkerMain()
Next
From: Michael Paquier
Date:
Subject: Re: Fix of fake unlogged LSN initialization