Re: Append with naive multiplexing of FDWs - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: Append with naive multiplexing of FDWs
Date
Msg-id 20191205181217.GA12895@momjian.us
Whole thread Raw
In response to Re: Append with naive multiplexing of FDWs  (Thomas Munro <thomas.munro@gmail.com>)
Responses Re: Append with naive multiplexing of FDWs
List pgsql-hackers
On Thu, Dec  5, 2019 at 05:45:24PM +1300, Thomas Munro wrote:
> My patch set (rebased upthread) was extremely primitive, with no new
> planner concepts, and added only a very simple new executor node
> method: ExecReady().  Append used that to try to ask its children if
> they'd like some time to warm up.  By default, ExecReady() says "I
> don't know what you're talking about, go away", but FDWs can provide
> an implementation that says "yes, please call me again when this fd is
> ready" or "yes, I am ready, please call ExecProc() now".  It doesn't
> deal with anything more complicated than that, and in particular it
> doesn't work if there are extra planner nodes in between Append and
> the foreign scan.  (It also doesn't mix particularly well with
> parallelism, as mentioned.)
> 
> The reason I reposted this unambitious work is because Stephen keeps
> asking me why we don't consider the stupidly simple thing that would
> help with simple foreign partition-based queries today, instead of
> waiting for someone to redesign the entire executor, because that's
> ... really hard.

I agree with Stephen's request.  We have been waiting for the executor
rewrite for a while, so let's just do something simple and see how it
performs.

-- 
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

+ As you are, so once was I.  As I am, so you will be. +
+                      Ancient Roman grave inscription +



pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: log bind parameter values on error
Next
From: Alvaro Herrera
Date:
Subject: Re: log bind parameter values on error