Re: Foreign join pushdown vs EvalPlanQual
От
Robert Haas
Тема
Re: Foreign join pushdown vs EvalPlanQual
Дата
Msg-id
CA+TgmoY30Sefj7MGfx2QvRD_K=kwmKTBJ+shx3LV5PXkp7ZYtw@mail.gmail.com
Ответ на
Re: Foreign join pushdown vs EvalPlanQual (Kouhei Kaigai)
Список
Дерево обсуждения
Re: Foreign join pushdown vs EvalPlanQual Kouhei Kaigai <kaigai@ak.jp.nec.com>
Re: Foreign join pushdown vs EvalPlanQual Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp>
Re: Foreign join pushdown vs EvalPlanQual Robert Haas <robertmhaas@gmail.com>
Re: Foreign join pushdown vs EvalPlanQual Michael Paquier <michael.paquier@gmail.com>
Re: Foreign join pushdown vs EvalPlanQual Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>
Re: Foreign join pushdown vs EvalPlanQual Michael Paquier <michael.paquier@gmail.com>
Re: Foreign join pushdown vs EvalPlanQual Robert Haas <robertmhaas@gmail.com>
On Tue, Sep 29, 2015 at 4:49 AM, Kouhei Kaigai wrote:
> Also note that EvalPlanQualFetchRowMarks() will raise an error
> if RefetchForeignRow callback returned NULL tuple.
> Is it right or expected behavior?
That's not how I read the code. If RefetchForeignRow returns NULL, we
just ignore the row and continue on to the next one:
if (copyTuple == NULL) { /* couldn't get the lock, so skip this row */ goto lnext; }
And that seems exactly right: RefetchForeignRow needs to test that the
tuple is still present on the remote side, and that any remote quals
are matched. If either of those is false, it can return NULL.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
В списке pgsql-hackers по дате отправления
От: Shulgin, Oleksandr
Дата: