Re: Append with naive multiplexing of FDWs
Etsuro Fujita <etsuro.fujita@gmail.com>
From: Etsuro Fujita <etsuro.fujita@gmail.com>
To: Thomas Munro <thomas.munro@gmail.com>
Cc: Kyotaro Horiguchi <horikyota.ntt@gmail.com>,
Bruce Momjian <bruce@momjian.us>, pgsql-hackers <pgsql-hackers@postgresql.org>,
Stephen Frost <sfrost@snowman.net>
Date: 2020-08-31T10:10:39Z
Lists: pgsql-hackers
On Mon, Aug 31, 2020 at 6:20 PM Etsuro Fujita <etsuro.fujita@gmail.com> wrote: > * I know your patch is a POC one, but one concern about it (and > Horiguchi-san's patch set) is concurrent data fetches by multiple > foreign scan nodes using the same connection in the case of > postgres_fdw. Here is an example causing an error: > select * from pt1, pt2 where pt2.a = 't22' or pt2.a = 't23'; > ERROR: another command is already in progress > CONTEXT: remote SQL command: DECLARE c4 CURSOR FOR > SELECT a, b FROM public.t22 WHERE (((a = 't22'::text) OR (a = 't23'::text))) > (Horiguchi-san’s patch set doesn't work for this query either, causing > the same error. Though, it looks like he intended to handle cases > like this by a queuing system added to postgres_fdw to process such > concurrent data fetches.) I was wrong here; Horiguchi-san's patch set works well for this query. Maybe I did something wrong when testing his patch set. Sorry for that. Best regards, Etsuro Fujita
Commits
-
Add support for asynchronous execution.
- 27e1f14563cf 14.0 landed