From: | Etsuro Fujita <efujita(at)postgresql(dot)org> |
---|---|
To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
Subject: | pgsql: Allow asynchronous execution in more cases. |
Date: | 2022-04-06 06:52:37 |
Message-ID: | E1nbzWu-000Xul-Vt@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Allow asynchronous execution in more cases.
In commit 27e1f1456, create_append_plan() only allowed the subplan
created from a given subpath to be executed asynchronously when it was
an async-capable ForeignPath. To extend coverage, this patch handles
cases when the given subpath includes some other Path types as well that
can be omitted in the plan processing, such as a ProjectionPath directly
atop an async-capable ForeignPath, allowing asynchronous execution in
partitioned-scan/partitioned-join queries with non-Var tlist expressions
and more UNION queries.
Andrey Lepikhov and Etsuro Fujita, reviewed by Alexander Pyhalov and
Zhihong Yu.
Discussion: https://postgr.es/m/659c37a8-3e71-0ff2-394c-f04428c76f08%40postgrespro.ru
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/c2bb02bc2e858ba345b8b33f1f3a54628f719d93
Modified Files
--------------
contrib/postgres_fdw/expected/postgres_fdw.out | 170 +++++++++++++++++++++++++
contrib/postgres_fdw/sql/postgres_fdw.sql | 41 ++++++
src/backend/nodes/copyfuncs.c | 1 +
src/backend/nodes/outfuncs.c | 1 +
src/backend/nodes/readfuncs.c | 1 +
src/backend/optimizer/plan/createplan.c | 57 +++++++--
src/backend/optimizer/plan/setrefs.c | 18 ++-
src/include/nodes/plannodes.h | 12 ++
src/include/optimizer/planmain.h | 1 +
9 files changed, 287 insertions(+), 15 deletions(-)
From | Date | Subject | |
---|---|---|---|
Next Message | Kyotaro Horiguchi | 2022-04-06 06:53:32 | Re: API stability |
Previous Message | Kyotaro Horiguchi | 2022-04-06 06:31:53 | Re: API stability |