Re: ExecAppendAsyncEventWait() in REL_14_STABLE can corrupt PG_exception_stack

Поиск
Список
Период
Сортировка
От Etsuro Fujita
Тема Re: ExecAppendAsyncEventWait() in REL_14_STABLE can corrupt PG_exception_stack
Дата
Msg-id CAPmGK17=Asbxv5Bka3SC==yG1q+1MGV9LA6sb_DqLUG7AxbBAQ@mail.gmail.com
обсуждение исходный текст
Ответ на Re: ExecAppendAsyncEventWait() in REL_14_STABLE can corrupt PG_exception_stack  (Michael Paquier <michael@paquier.xyz>)
Ответы Re: ExecAppendAsyncEventWait() in REL_14_STABLE can corrupt PG_exception_stack
Re: ExecAppendAsyncEventWait() in REL_14_STABLE can corrupt PG_exception_stack
Список pgsql-hackers
Hi,

On Sat, Feb 24, 2024 at 10:06 AM Michael Paquier <michael@paquier.xyz> wrote:
> On Fri, Feb 23, 2024 at 01:21:14PM +0300, Alexander Pyhalov wrote:
> > Recent commit 555276f8594087ba15e0d58e38cd2186b9f39f6d introduced final
> > cleanup of node->as_eventset in ExecAppendAsyncEventWait().
> > Unfortunately, now this function can return in the middle of TRY/FINALLY
> > block, without restoring PG_exception_stack.
> >
> > We found this while working on our FDW. Unfortunately, I couldn't reproduce
> > the issue with postgres_fdw, but it seems it is also affected.

I think this would happen when FDWs configure no events; IIRC I think
while the core allows them to do so, postgres_fdw does not do so, so
this would never happen with it.  Anyway, thanks for the report and
patch, Alexander!

> Ugh, yes, you are obviously right that the early return is wrong.
> I'll look into fixing that where appropriate.

Thanks for taking care of this, Michael-san!  This would result
originally from my fault, so If you don't mind, could you let me do
that?

Best regards,
Etsuro Fujita



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Jim Jones
Дата:
Сообщение: Re: Patch: Add parse_type Function
Следующее
От: Julien Rouhaud
Дата:
Сообщение: Re: RFC: Logging plan of the running query