Re: Asynchronous Append on postgres_fdw nodes.

David Steele <david@pgmasters.net>

From: David Steele <david@pgmasters.net>
To: Kyotaro Horiguchi <horikyota.ntt@gmail.com>, pgsql-hackers@lists.postgresql.org
Date: 2020-03-04T14:56:55Z
Lists: pgsql-hackers
On 2/28/20 3:06 AM, Kyotaro Horiguchi wrote:
> Hello, this is a follow-on of [1] and [2].
> 
> Currently the executor visits execution nodes one-by-one.  Considering
> sharding, Append on multiple postgres_fdw nodes can work
> simultaneously and that can largely shorten the respons of the whole
> query.  For example, aggregations that can be pushed-down to remote
> would be accelerated by the number of remote servers. Even other than
> such an extreme case, collecting tuples from multiple servers also can
> be accelerated by tens of percent [2].
> 
> I have suspended the work waiting asyncrohous or push-up executor to
> come but the mood seems inclining toward doing that before that to
> come [3].
> 
> The patchset consists of three parts.

Are these improvements targeted at PG13 or PG14?  This seems to be a 
pretty big change for the last CF of PG13.

Regards,
-- 
-David
david@pgmasters.net



Commits

  1. Improve comments for trivial_subqueryscan().

  2. Disable asynchronous execution if using gating Result nodes.

  3. Allow asynchronous execution in more cases.

  4. Doc: Further update documentation for asynchronous execution.

  5. Fix rescanning of async-aware Append nodes.

  6. Doc: Update documentation for asynchronous execution.

  7. Fix EXPLAIN ANALYZE for async-capable nodes.

  8. Minor code cleanup in asynchronous execution support.

  9. Adjust input value to WaitEventSetWait() in ExecAppendAsyncEventWait().

  10. Add support for asynchronous execution.