Re: Asynchronous Append on postgres_fdw nodes.
Kyotaro Horiguchi <horikyota.ntt@gmail.com>
From: Kyotaro Horiguchi <horikyota.ntt@gmail.com>
To: a.lepikhov@postgrespro.ru
Cc: etsuro.fujita@gmail.com, movead.li@highgo.ca,
pgsql-hackers@lists.postgresql.org
Date: 2020-07-02T02:14:48Z
Lists: pgsql-hackers
Attachments
Hello.
As the result of a discussion with Fujita-san off-list, I'm going to
hold off development until he decides whether mine or Thomas' is
better.
However, I fixed two misbehaviors and rebased.
A. It runs ordered Append asynchronously, but that leads to a bogus
result. I taught create_append_plan not to make subnodes async when
pathkey is not NIL.
B. It calculated the total cost of Append by summing up total costs of
all subnodes including async subnodes. It is too pessimistic so I
changed that to the following.
Max(total cost of sync subnodes, maximum cost of async subnodes);
However this is a bit too optimistic in that it ignores interference
between async subnodes, it is more realistic in the cases where the
subnode ForeignScans are connecting to different servers.
regards.
--
Kyotaro Horiguchi
NTT Open Source Software Center
Commits
-
Improve comments for trivial_subqueryscan().
- 4a8a5dd7f59c 15.0 landed
-
Disable asynchronous execution if using gating Result nodes.
- ebb790241523 14.3 landed
- 5c854e7a2c8a 15.0 landed
-
Allow asynchronous execution in more cases.
- c2bb02bc2e85 15.0 landed
-
Doc: Further update documentation for asynchronous execution.
- eab81953682d 14.0 landed
-
Fix rescanning of async-aware Append nodes.
- f3baaf28a6da 14.0 landed
-
Doc: Update documentation for asynchronous execution.
- 15fcd33e0694 14.0 landed
-
Fix EXPLAIN ANALYZE for async-capable nodes.
- a363bc6da96b 14.0 landed
-
Minor code cleanup in asynchronous execution support.
- bb684c82f733 14.0 landed
-
Adjust input value to WaitEventSetWait() in ExecAppendAsyncEventWait().
- a8af856d3257 14.0 landed
-
Add support for asynchronous execution.
- 27e1f14563cf 14.0 landed