Re: A gap in preventing bogus parameterizations in a798660ebe3

From: Tomas Vondra <tomas(at)vondra(dot)me>
To: Álvaro Herrera <alvherre(at)kurilemu(dot)de>, Tender Wang <tndrwang(at)gmail(dot)com>
Cc: PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Richard Guo <guofenglinux(at)gmail(dot)com>
Subject: Re: A gap in preventing bogus parameterizations in a798660ebe3
Date: 2026-11-02 16:19:45
Message-ID: e0a34fc3-30cc-43fc-91e4-c8ca57d140ab@vondra.me
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 11/2/26 12:01, Álvaro Herrera wrote:
> On 2026-Nov-02, Tender Wang wrote:
>
>> As you noted, adding a field to JoinPathExtraData raises an ABI
>> concern, so that version of the fix might need to be master-only.
>
> But nothing allocates JoinPathExtraData anywhere except
> add_paths_to_joinrel in its stack; everybody else just receives a
> pointer to that. Even the hooks for it receive it as a pointer. I
> think the ABI concern is overblown in this case; just make sure to add
> the new field at the end.
>

You're probably right. I was concerned some extension might be me
allocating the struct (as it's in a public header), but I did check a
couple extensions that might be doing that (like pg_hint_plan) and I
haven't found such cases.

So putting the new field at the end should be fine.

regards

--
Tomas Vondra

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Jingtang Zhang 2026-11-02 16:40:15 [PATCH] Periodically refresh database frozen IDs during autovacuum
Previous Message Nathan Bossart 2026-11-02 16:18:21 Re: [PATCH] Corruption Issue: Fix missing tts_tid in ExecForceStoreHeapTuple