Re: pgsql: Clean up all relid fields of RestrictInfos during join removal. - Mailing list pgsql-committers

From Richard Guo
Subject Re: pgsql: Clean up all relid fields of RestrictInfos during join removal.
Date
Msg-id CAMbWs4-FS=RLm4beNYR+5CYDDJxq6RU1FFAWqxYGZJDGFAfjZA@mail.gmail.com
Whole thread
In response to Re: pgsql: Clean up all relid fields of RestrictInfos during join removal.  (Michael Paquier <michael@paquier.xyz>)
Responses Re: pgsql: Clean up all relid fields of RestrictInfos during join removal.
List pgsql-committers
On Tue, Apr 21, 2026 at 8:03 AM Michael Paquier <michael@paquier.xyz> wrote:
>
> Hi Tom,
>
> On Mon, Apr 20, 2026 at 06:48:35PM +0000, Tom Lane wrote:
> > Clean up all relid fields of RestrictInfos during join removal.
> >
> > The original implementation of remove_rel_from_restrictinfo()
> > thought it could skate by with removing no-longer-valid relid
> > bits from only the clause_relids and required_relids fields.
> > This is quite bogus, although somehow we had not run across a
> > counterexample before now.  At minimum, the left_relids and
> > right_relids fields need to be fixed because they will be
> > examined later by clause_sides_match_join().  But it seems
> > pretty foolish not to fix all the relid fields, so do that.
>
> prion looks unhappy on this one:
> https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=prion&dt=2026-04-20%2022%3A50%3A01
>
> This uses -DRELCACHE_FORCE_RELEASE -DCATCACHE_FORCE_RELEASE.

This seems the same problem as in skink.  There is a WIP patch for the
fix at:
https://postgr.es/m/458729.1776724816@sss.pgh.pa.us

- Richard



pgsql-committers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: pgsql: Clean up all relid fields of RestrictInfos during join removal.
Next
From: Tom Lane
Date:
Subject: pgsql: Fix relid-set clobber during join removal.