Re: WAL segments removed from primary despite the fact that logical replication slot needs it.

hubert depesz lubaczewski <depesz@depesz.com>

From: hubert depesz lubaczewski <depesz@depesz.com>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: pgsql-bugs mailing list <pgsql-bugs@postgresql.org>
Date: 2022-11-14T16:51:40Z
Lists: pgsql-bugs

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Fix a possibility of logical replication slot's restart_lsn going backwards.

On Mon, Nov 14, 2022 at 09:52:05PM +0530, Amit Kapila wrote:
> On Mon, Nov 14, 2022 at 7:03 PM hubert depesz lubaczewski
> <depesz@depesz.com> wrote:
> >
> > On Mon, Nov 14, 2022 at 06:30:57PM +0530, Amit Kapila wrote:
> > > > There is something weird happening:
> > > What exactly weird you are seeing in this? To me, it appears as if the
> > > system due to some reason ignores an existing slot that has
> > > restart_lsn as 1039D/83825958.
> >
> > The weird part for me is that it is trying to remove wal files older
> > than the same "x" many times.
> >
> 
> I think that is okay because as per checkpointer's computation it
> decides not to remove/replace any new WAL files. At this stage, I am
> not getting any idea except for getting the value of
> XLogGetReplicationSlotMinimumLSN() in one of the LOG prints. If you
> can't add all the LOGs, I shared in the last patch, can you try to get
> the value of XLogGetReplicationSlotMinimumLSN() by appending to the
> existing LOG "attempting to remove WAL segments older than log file
> .."?

If I'll get *any* patch approved, and restart of client db, then it
doesn't matter how many LOGs there will be :)

Will get back to you as soon as I will have more info.

Best regards,

depesz