Re: Push down more full joins in postgres_fdw

Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp>

From: Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp>
To: Ashutosh Bapat <ashutosh.bapat@enterprisedb.com>, Robert Haas <robertmhaas@gmail.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2016-09-26T07:35:17Z
Lists: pgsql-hackers
On 2016/09/15 15:29, Ashutosh Bapat wrote:
> On Wed, Sep 14, 2016 at 8:52 PM, Robert Haas <robertmhaas@gmail.com> wrote:

>> I'm not sure why it wouldn't work
>> to just use the lowest RTI involved in the join, though; the others
>> won't appear anywhere else at that query level.

> So +1 for
> using the smallest RTI to indicate a subquery.

+1 for the general idea.

ISTM that the use of the same RTI for subqueries in multi-levels in a 
remote SQL makes the SQL a bit difficult to read.  How about using the 
position of the join rel in join_rel_list, (more precisely, the position 
plus list_length(root->parse->rtable)), instead?

Best regards,
Etsuro Fujita




Commits

  1. postgres_fdw: Push down FULL JOINs with restriction clauses.