Re: BUG #18429: Inconsistent results on similar queries with join lateral

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: "David G. Johnston" <david.g.johnston@gmail.com>
Cc: Benoit Ryder <b.ryder@ateme.com>, "pgsql-bugs@lists.postgresql.org" <pgsql-bugs@lists.postgresql.org>
Date: 2024-04-12T19:01:50Z
Lists: pgsql-bugs
"David G. Johnston" <david.g.johnston@gmail.com> writes:
> On Fri, Apr 12, 2024 at 8:50 AM Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> I'm not seeing a bulletproof way offhand, other than "update to v16".

> Q1 is trivially fixed by specifying "WITH c2 AS MATERIALIZED ( ... )", No?

Q1 as stated, yeah.  But the question was about generically avoiding
this bug, and I'm not yet sure about how to do that in cases not
involving a WITH boundary (eg Q3,Q4).

			regards, tom lane



Commits

  1. Ensure generated join clauses for child rels have correct relids.

  2. Fix generation of EC join conditions at the wrong plan level.

  3. Make Vars be outer-join-aware.