Re: [HACKERS] postgres_fdw bug in 9.6 - Mailing list pgsql-hackers

From Etsuro Fujita
Subject Re: [HACKERS] postgres_fdw bug in 9.6
Date
Msg-id b3276c2e-36f2-fecc-838f-2e9c8e6b37b5@lab.ntt.co.jp
Whole thread Raw
In response to Re: [HACKERS] postgres_fdw bug in 9.6  (Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp>)
List pgsql-hackers
On 2016/12/21 21:44, Etsuro Fujita wrote:
> On 2016/12/20 0:37, Tom Lane wrote:
>> Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp> writes:
>>> On 2016/12/17 1:13, Tom Lane wrote:
>>>> So I think the rule could be

>>>> "When first asked to produce a path for a given foreign joinrel,
>>>> collect
>>>> the cheapest paths for its left and right inputs, and make a
>>>> nestloop path
>>>> (or hashjoin path, if full join) from those, using the join quals
>>>> needed
>>>> for the current input relation pair.

>>> Seems reasonable.

>>>> Use this as the fdw_outerpath for
>>>> all foreign paths made for the joinrel."

>>> I'm not sure that would work well for foreign joins with sort orders.
>>> Consider a merge join, whose left input is a 2-way foreign join with a
>>> sort order that implements a full join and whose right input is a sorted
>>> local table scan.  If the EPQ subplan for the foreign join wouldn't
>>> produce the right sort order, the merge join might break during EPQ
>>> rechecks (note that in this case the EPQ subplan for the foreign join
>>> might produce more than a single row during an EPQ recheck).

>> How so?  We only recheck one row at a time, therefore it can be
>> claimed to
>> have any sort order you care about.

> I'll have second thoughts about that.

I noticed I was wrong and you are right.  Sorry for the noise.

Best regards,
Etsuro Fujita





pgsql-hackers by date:

Previous
From: Kyotaro HORIGUCHI
Date:
Subject: Re: [HACKERS] IF (NOT) EXISTS in psql-completion
Next
From: Michael Paquier
Date:
Subject: [HACKERS] Commit fest 2017-01 will begin soon!