Re: Use of max_slot_wal_keep_size parameter

From: Don Seiler <don(at)seiler(dot)us>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Postgres General <pgsql-general(at)postgresql(dot)org>
Subject: Re: Use of max_slot_wal_keep_size parameter
Date: 2024-03-26 14:16:05
Message-ID: CAHJZqBB5E4gF18PSOqHph+uXQ+HP5uRqf1S1MYekbSspO_VRbw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Tue, Mar 26, 2024 at 9:09 AM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:

> My immediate reaction is that 3% is a mighty small margin for error.
> I don't know exactly how max_slot_wal_keep_size is enforced these
> days, but in the past restrictions like that were implemented by
> deciding during a checkpoint whether to unlink a no-longer-needed WAL
> file (if we had too much WAL) or rename/recycle it to become a future
> WAL segment (if not). So you could overshoot the specified target by
> more or less the amount of WAL that could be emitted between two
> checkpoints. Perhaps it's tighter nowadays, but I really doubt that
> it's exact-to-the-kilobyte-at-all-times.
>

In this case, the total volume size was 60GB and we had the parameter set
to 58GB but I imagine that can still be overwhelmed quickly. Maybe we
should target a 20% buffer zone? We have wal_keep_size defaulted at 0.

Thanks,
Don.

--
Don Seiler
www.seiler.us

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Ц 2024-03-26 14:19:14 Active sessions does not terminated due to statement_timeout
Previous Message Tom Lane 2024-03-26 14:09:04 Re: Use of max_slot_wal_keep_size parameter