On Tue, Dec 14, 2021 at 9:35 AM Kyotaro Horiguchi
<horikyota.ntt@gmail.com> wrote:
>
> Hello.
>
> As complained in pgsql-bugs [1], when a process is terminated due to
> max_slot_wal_keep_size, the related messages don't mention the root
> cause for *the termination*. Note that the third message does not
> show for temporary replication slots.
>
> [pid=a] LOG: terminating process x to release replication slot "s"
> [pid=x] LOG: FATAL: terminating connection due to administrator command
> [pid=a] LOG: invalidting slot "s" because its restart_lsn X/X exceeds max_slot_wal_keep_size
>
> The attached patch attaches a DETAIL line to the first message.
>
> > [17605] LOG: terminating process 17614 to release replication slot "s1"
> + [17605] DETAIL: The slot's restart_lsn 0/2C0000A0 exceeds max_slot_wal_keep_size.
> > [17614] FATAL: terminating connection due to administrator command
> > [17605] LOG: invalidating slot "s1" because its restart_lsn 0/2C0000A0 exceeds max_slot_wal_keep_size
>
> Somewhat the second and fourth lines look inconsistent each other but
> that wouldn't be such a problem. I don't think we want to concatenate
> the two lines together as the result is a bit too long.
>
> > LOG: terminating process 17614 to release replication slot "s1" because it's restart_lsn 0/2C0000A0 exceeds
max_slot_wal_keep_size.
>
> What do you think about this?
Agree. I think we should also specify the restart_lsn value which
would be within max_slot_wal_keep_size for better understanding.
--
Best Wishes,
Ashutosh Bapat