From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Etsuro Fujita <etsuro(dot)fujita(at)gmail(dot)com> |
Cc: | Michael Paquier <michael(at)paquier(dot)xyz>, Etsuro Fujita <efujita(at)postgresql(dot)org>, pgsql-committers <pgsql-committers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: pgsql: postgres_fdw: Fix handling of pending asynchronous requests. |
Date: | 2021-07-31 16:41:16 |
Message-ID: | 1255271.1627749676@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Etsuro Fujita <etsuro(dot)fujita(at)gmail(dot)com> writes:
> 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.
I tried this patch on a spare machine that seems prone to showing
the failure: on HEAD, postgres_fdw's installcheck failed 3 times
in 4 attempts. With the patch, it's gotten through 23 consecutive
tries without a failure. So this is at least way better ...
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2021-07-31 19:36:00 | pgsql: Doc: alphabetize the regexp_foo() function descriptions in 9.7.3 |
Previous Message | Tom Lane | 2021-07-31 15:50:38 | pgsql: Use elog, not Assert, to report failure to provide an outer snap |