RE: ReplicationSlotRelease() crashes when the instance is in the single user mode

Hayato Kuroda (Fujitsu) <kuroda.hayato@fujitsu.com>

From: "Hayato Kuroda (Fujitsu)" <kuroda.hayato@fujitsu.com>
To: 'Michael Paquier' <michael@paquier.xyz>
Cc: "'pgsql-hackers@lists.postgresql.org'" <pgsql-hackers@lists.postgresql.org>
Date: 2025-02-18T08:23:43Z
Lists: pgsql-hackers
Dear Michael,

> Ah, good point for the slot drop.  So 0ce5cf2ef24f is claiming that
> some of these manipulations are OK.  I didn't suspect this one.

Yeah, I think so.

> Slot advancing is a very different beast, unfortunately, that may
> depend on many other subsystems.  For example with logical slots we
> would finish by calling rm_decode, which could be outside of core.
> Justifying that this operation is supported in single-user mode is
> larger than what you are suggesting here..

OK. Actually, I do not have any use-cases in my mind. I played because
I found a special path for single user mode in ReplicationSlotAcquire()
so that I wanted to see the behavior.

Best regards,
Hayato Kuroda
FUJITSU LIMITED




Commits

  1. Fix assertion failure with replication slot release in single-user mode