Re: A gap in preventing bogus parameterizations in a798660ebe3

From: Tomas Vondra <tomas(at)vondra(dot)me>
To: Richard Guo <guofenglinux(at)gmail(dot)com>
Cc: Álvaro Herrera <alvherre(at)kurilemu(dot)de>, Tender Wang <tndrwang(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Subject: Re: A gap in preventing bogus parameterizations in a798660ebe3
Date: 2026-11-11 17:51:47
Message-ID: 06a694d3-e28a-4c96-aa12-1c3d0c4b2f1a@vondra.me
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 11/9/26 12:33, Tomas Vondra wrote:
>
>
> On 11/9/26 09:10, Richard Guo wrote:
>> On Mon, Nov 9, 2026 at 4:47 AM Tomas Vondra <tomas(at)vondra(dot)me> wrote:
>>> I'm now fairly confident the fix is correct. I'd still welcome someone
>>> else doing a quick review, of course.
>>
>> I looked at the master patch, and it LGTM.
>>
>> One nit on the commit message: "we still reject the path, just a bit
>> later" isn't quite accurate. AFAICS nothing rejects such a path
>> later. It'd be added to the joinrel's pathlist, just that it can
>> never be used, because its parameterization includes a relid within
>> the joinrel, which the other input of an upper join can never supply.
>> Maybe something like "In non-assert builds this is mostly harmless,
>> since such paths can never appear in a complete plan."
>>
>
> Right. That's what I mean by "rejected" by I agree it's a bit unclear.
Pushed, after rewording the commit message a little bit to make it clear
we were not rejecting the paths, but a final plan would not have used
them because of the bogus parameterization.

Thanks for the review!

--
Tomas Vondra

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Greg Burd 2026-11-11 18:14:24 Re: Hash index: stop registering pin-only bucket pages in WAL (remove REGBUF_NO_CHANGE)
Previous Message Bharath Rupireddy 2026-11-11 17:45:48 Re: [PATCH] Fall back to serializing when parallel apply runs out of DSM segments