Re: BUG #18828: Crash when pg_get_logical_snapshot_meta() passed empty string - Mailing list pgsql-bugs

From Masahiko Sawada
Subject Re: BUG #18828: Crash when pg_get_logical_snapshot_meta() passed empty string
Date
Msg-id CAD21AoBVnenMbN4qccEmCOE9H=_Z1PUaPMBf0HPjK4E9W7z3gw@mail.gmail.com
Whole thread Raw
In response to Re: BUG #18828: Crash when pg_get_logical_snapshot_meta() passed empty string  (Bertrand Drouvot <bertranddrouvot.pg@gmail.com>)
Responses Re: BUG #18828: Crash when pg_get_logical_snapshot_meta() passed empty string
Re: BUG #18828: Crash when pg_get_logical_snapshot_meta() passed empty string
List pgsql-bugs
On Tue, Mar 4, 2025 at 10:44 PM Bertrand Drouvot
<bertranddrouvot.pg@gmail.com> wrote:
>
> Hi,
>
> On Tue, Mar 04, 2025 at 09:45:54PM +0000, Bertrand Drouvot wrote:
> > Indeed, thanks for looking at it! Fixed in v4 attached. Note that the pfree()
> > in parse_snapshot_filename() is not needed per say because the function is
> > currently executed in a short-lived memory context. It's there for safety reason
> > in case it's called outside those SQL apis in the future.
>
> After sleeping on it, PFA a simplified version.
>

Thank you for updating the patch.

I think we don't need to even do palloc() for the buffer as we can use
the char[MAXPGPATH] instead. I've attached the patch to improve the
parse_snapshot_filename() function and add some regression tests.
Please review these changes.

Regards,

--
Masahiko Sawada
Amazon Web Services: https://aws.amazon.com

Attachment

pgsql-bugs by date:

Previous
From: PG Bug reporting form
Date:
Subject: BUG #18832: Segfault in GrantLockLocal
Next
From: Robins Tharakan
Date:
Subject: Re: BUG #18828: Crash when pg_get_logical_snapshot_meta() passed empty string