Re: v16 regression - wrong query results with LEFT JOINs + join removal - Mailing list pgsql-hackers

From Tom Lane
Subject Re: v16 regression - wrong query results with LEFT JOINs + join removal
Date
Msg-id 1132720.1683827193@sss.pgh.pa.us
Whole thread Raw
In response to Re: v16 regression - wrong query results with LEFT JOINs + join removal  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: v16 regression - wrong query results with LEFT JOINs + join removal
List pgsql-hackers
I wrote:
> Yeah, I've just traced the problem to remove_rel_from_query() deciding
> that it can drop the qual of interest :-(.  I'd done this:
> -       if (RINFO_IS_PUSHED_DOWN(rinfo, joinrelids))
> +       if (bms_is_member(ojrelid, rinfo->required_relids))
> as part of an unfinished effort at getting rid of RestrictInfos'
> is_pushed_down flags, and this example shows that the replacement
> condition is faulty.

> What I'm inclined to do about it is just revert this particular
> change.  But I'd better run around and see where else I did that,
> because the idea is evidently not ready for prime time.

Looks like that was the only such change in 2489d76c4 or
follow-ons, so done, with a test case based on your example.

            regards, tom lane



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: v16 regression - wrong query results with LEFT JOINs + join removal
Next
From: Robert Haas
Date:
Subject: Re: v16 regression - wrong query results with LEFT JOINs + join removal