Re: pgsql: postgres_fdw: Fix handling of pending asynchronous requests.
| От | Etsuro Fujita |
|---|---|
| Тема | Re: pgsql: postgres_fdw: Fix handling of pending asynchronous requests. |
| Дата | |
| Msg-id | CAPmGK15Lrw4sJ6sZU+NoAW2_D1rGkZ1vLuR3afyUdbrtBPdy+g@mail.gmail.com обсуждение исходный текст |
| Ответ на | Re: pgsql: postgres_fdw: Fix handling of pending asynchronous requests. (Etsuro Fujita <etsuro.fujita@gmail.com>) |
| Ответы |
Re: pgsql: postgres_fdw: Fix handling of pending asynchronous requests.
|
| Список | pgsql-committers |
On Fri, Jul 30, 2021 at 10:00 PM Etsuro Fujita <etsuro.fujita@gmail.com> wrote:
> On Fri, Jul 30, 2021 at 9:45 PM Michael Paquier <michael@paquier.xyz> wrote:
> > On Fri, Jul 30, 2021 at 08:08:07AM +0000, Etsuro Fujita wrote:
> > > postgres_fdw: Fix handling of pending asynchronous requests.
> >
> > You have angered many members of the buildfarm here, like:
> I’ll look into this.
Buildfarm members are causing this assertion failure:
TRAP: FailedAssertion("fsstate->conn_state->pendingAreq == areq",
File: "/home/pgbf/buildroot/HEAD/pgsql.build/../pgsql/contrib/postgres_fdw/postgres_fdw.c",
Line: 6900, PID: 744110)
I couldn’t reproduce this in my environment, but I noticed this, which
didn’t happen in my environment: the case of delivering notifications
to both of the parent async-capable nodes in ExecAppendAsyncEventWait
when processing the added test case query. In that case, doing
postgresForeignAsyncNotify for the first parent async-capable node
would invoke process_pending_request on the second one when executing
its initplan, which would lead to the assertion failure when doing
postgresForeignAsyncNotify for the second one. :-( I think
postgresForeignAsyncNotify would need the same treatment as for
postgresForeignAsyncConfigureWait, like the attached.
Best regards,
Etsuro Fujita
Вложения
В списке pgsql-committers по дате отправления: