Re: BUG #18284: Filter in left lateral join not respected

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: BUG #18284: Filter in left lateral join not respected
Дата
Msg-id 74950.1704988899@sss.pgh.pa.us
обсуждение исходный текст
Ответ на BUG #18284: Filter in left lateral join not respected  (PG Bug reporting form <noreply@postgresql.org>)
Ответы Re: BUG #18284: Filter in left lateral join not respected  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs
PG Bug reporting form <noreply@postgresql.org> writes:
> The following script returns two rows with `666`, whereas `null` is to be
> expected:

> WITH r1 AS (VALUES(null)),
> r2 AS (VALUES(null), (null))
> SELECT ljl.val_filtered
> FROM r1
> LEFT JOIN(
>     SELECT j666.val FROM r2
>     JOIN (SELECT 666 AS val) as j666 ON true
> )AS lj_r2 ON true
> LEFT JOIN LATERAL(
>     SELECT lj_r2.val AS val_filtered
>     WHERE false
> ) AS ljl ON true;

Hmph ... this has been broken for a good long while.  Bisecting
shows it gave the right answer before

4be058fe9ec5e630239b656af21fc083371f30ed is the first bad commit
commit 4be058fe9ec5e630239b656af21fc083371f30ed
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date:   Mon Jan 28 17:54:10 2019 -0500

    In the planner, replace an empty FROM clause with a dummy RTE.

so I'm betting that missed a condition about when it is safe to
flatten RTE_RESULT RTEs.  Will look, thanks for the report!

            regards, tom lane



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

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: BUG #17798: Incorrect memory access occurs when using BEFORE ROW UPDATE trigger
Следующее
От: Tom Lane
Дата:
Сообщение: Re: BUG #18284: Filter in left lateral join not respected