Re: postgres_fdw bug in 9.6

Поиск
Список
Период
Сортировка
От Ashutosh Bapat
Тема Re: postgres_fdw bug in 9.6
Дата
Msg-id CAFjFpRfPdNDBuw4246Y=mFsY_83=5aku8-2ry+0WdHB9BqaWhg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: postgres_fdw bug in 9.6  (Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp>)
Список pgsql-hackers
Probably we should use "could not be created" instead of "was not created" in "... a local path suitable for EPQ checks was not created".

"outer_path should not require relations from inner_path" may be reworded as "outer paths should not be parameterized by the inner relations".

"neither path should require relations from the other path" may be reworded as "neither path should be parameterized by the the other joining relation".


While the comment below mentions ON true, the testcase you have added is for ON
false. Either the testcase should change or this comment. That raises another
question, what happens when somebody does FULL JOIN ON false?
+                     * If special case: for "x FULL JOIN y ON true", there

FULL JOIN ON FALSE would be handled the same way as FULL JOIN ON TRUE, so I think we should rewrite that comment into something like this: If special case: for "x FULL JOIN y ON true" or "x FULL JOIN y ON false"...

Ok.
 

Why JOIN_RIGHT is being treated differently from JOIN_LEFT? We should be able
to create a nested loop join for JOIN_RIGHT?
+        case JOIN_RIGHT:
+        case JOIN_FULL:

I don't think so, because nestloop joins aren't supported for JOIN_RIGHT.  See ExecInitNestLoop().

Hmm, I see in match_unsorted_outer()
1254         case JOIN_RIGHT:
1255         case JOIN_FULL:
1256             nestjoinOK = false;
1257             useallclauses = true;
1258             break;

--
Best Wishes,
Ashutosh Bapat
EnterpriseDB Corporation
The Postgres Database Company

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tatsuo Ishii
Дата:
Сообщение: Re: Statement timeout behavior in extended queries
Следующее
От: Michael Paquier
Дата:
Сообщение: Letting the client choose the protocol to use during a SASL exchange