Re: Join push-down support for foreign tables - Mailing list pgsql-hackers

From Shigeru Hanada
Subject Re: Join push-down support for foreign tables
Date
Msg-id CAEZqfEd203Ag2DqQOEVbEd=x4petULPqc=UG4iS+=J8q6Jjv5w@mail.gmail.com
Whole thread Raw
In response to Re: Join push-down support for foreign tables  (Shigeru Hanada <shigeru.hanada@gmail.com>)
Responses Re: Join push-down support for foreign tables
List pgsql-hackers
Hi

I've revised the patch based on Kaigai-san's custom/foreign join patch
posted in the thread below.

http://www.postgresql.org/message-id/9A28C8860F777E439AA12E8AEA7694F80108C355@BPXM15GP.gisp.nec.co.jp

Basically not changed from the version in the last CF, but as Robert
commented before, N-way (not only 2-way) joins should be supported in
the first version by construct SELECT SQL by containing source query
in FROM clause as inline views (a.k.a. from clause subquery).

2014-12-26 13:48 GMT+09:00 Shigeru Hanada <shigeru.hanada@gmail.com>:
> 2014-12-16 1:22 GMT+09:00 Robert Haas <robertmhaas@gmail.com>:
>> On Mon, Dec 15, 2014 at 3:40 AM, Shigeru Hanada
>> <shigeru.hanada@gmail.com> wrote:
>>> I'm working on $SUBJECT and would like to get comments about the
>>> design.  Attached patch is for the design below.
>>
>> I'm glad you are working on this.
>>
>>> 1. Join source relations
>>> As described above, postgres_fdw (and most of SQL-based FDWs) needs to
>>> check that 1) all foreign tables in the join belong to a server, and
>>> 2) all foreign tables have same checkAsUser.
>>> In addition to that, I add extra limitation that both inner/outer
>>> should be plain foreign tables, not a result of foreign join.  This
>>> limiation makes SQL generator simple.  Fundamentally it's possible to
>>> join even join relations, so N-way join is listed as enhancement item
>>> below.
>>
>> It seems pretty important to me that we have a way to push the entire
>> join nest down.  Being able to push down a 2-way join but not more
>> seems like quite a severe limitation.
>
> Hmm, I agree to support N-way join is very useful.  Postgres-XC's SQL
> generator seems to give us a hint for such case, I'll check it out
> again.
>
> --
> Shigeru HANADA



--
Shigeru HANADA

Attachment

pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: Commit fest 2015-12 enters money time
Next
From: Kouhei Kaigai
Date:
Subject: Re: Join push-down support for foreign tables