From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
---|---|
To: | Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com> |
Cc: | jeff(dot)janes(at)gmail(dot)com, mk(at)071(dot)ovh, pgsql-bugs(at)lists(dot)postgresql(dot)org |
Subject: | Re: BUG #17103: WAL segments are not removed after exceeding max_slot_wal_keep_size |
Date: | 2021-07-15 19:09:55 |
Message-ID: | 202107151909.q26rrvd3ius7@alvherre.pgsql |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
On 2021-Jul-15, Kyotaro Horiguchi wrote:
> This is it. It is for the master branch but also applicable to 14 as
> is. Not needed for earlier version.
> I believe the test works for Windows but haven't checked.
I looked at it. I think it is better to make the calls to
ReplicationSlotsComputeRequiredLSN() in slot.c (which is where most other
calls to that function are). Also we should recompute the minimum
required Xmin at that point.
Another change I did was move the "*invalidated=true" assignment to the
block where we actually invalidate the slot; in your patch you were
doing it possibly too early if the slot was in use by some other
process. (For end effect it probably doesn't matter much, but it's
better to have it right.)
--
Álvaro Herrera PostgreSQL Developer — https://www.EnterpriseDB.com/
Attachment | Content-Type | Size |
---|---|---|
v2-0001-Advance-old-segment-horizon-properly-after-slot-i.patch | text/x-diff | 6.6 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2021-07-15 20:49:10 | Re: BUG #17103: WAL segments are not removed after exceeding max_slot_wal_keep_size |
Previous Message | Heikki Linnakangas | 2021-07-15 18:49:31 | Re: IRe: BUG #16792: silent corruption of GIN index resulting in SELECTs returning non-matching rows |