Re: BUG #17903: There is a bug in the KeepLogSeg()

Nathan Bossart <nathandbossart@gmail.com>

From: Nathan Bossart <nathandbossart@gmail.com>
To: Kyotaro Horiguchi <horikyota.ntt@gmail.com>
Cc: zhjwpku@gmail.com, xu.xw2008@163.com, pgsql-bugs@lists.postgresql.org
Date: 2023-04-27T21:47:46Z
Lists: pgsql-bugs
On Tue, Apr 25, 2023 at 01:14:52PM +0900, Kyotaro Horiguchi wrote:
> At Mon, 24 Apr 2023 12:14:52 -0700, Nathan Bossart <nathandbossart@gmail.com> wrote in 
>> When determining the oldest segment that must be kept for
>> replication slots, KeepLogSeg() might calculate a segment number
>> ahead of the one for the LSN given to the function.  This causes
> 
> Maybe the KeepLogSeg() is a mistake of
> XLogGetReplicationSlotMinimumLSN()?

I adjusted the commit message to call out that function explicitly.  Also,
I decided to go with the "keep < recptr" approach since there's no reason
to do anything in that block otherwise.

Thanks!

-- 
Nathan Bossart
Amazon Web Services: https://aws.amazon.com



Commits

  1. Prevent underflow in KeepLogSeg().