Re: Redesigning checkpoint_segments

From: Heikki Linnakangas <hlinnakangas(at)vmware(dot)com>
To: Josh Berkus <josh(at)agliodbs(dot)com>
Cc: Peter Eisentraut <peter_e(at)gmx(dot)net>, <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Redesigning checkpoint_segments
Date: 2015-01-05 09:34:54
Message-ID: 54AA5ABE.2070105@vmware.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 01/04/2015 11:44 PM, Josh Berkus wrote:
> On 01/03/2015 12:56 AM, Heikki Linnakangas wrote:
>> On 01/03/2015 12:28 AM, Josh Berkus wrote:
>>> On 01/02/2015 01:57 AM, Heikki Linnakangas wrote:
>>>> wal_keep_segments does not affect the calculation of CheckPointSegments.
>>>> If you set wal_keep_segments high enough, checkpoint_wal_size will be
>>>> exceeded. The other alternative would be to force a checkpoint earlier,
>>>> i.e. lower CheckPointSegments, so that checkpoint_wal_size would be
>>>> honored. However, if you set wal_keep_segments high enough, higher than
>>>> checkpoint_wal_size, it's impossible to honor checkpoint_wal_size no
>>>> matter how frequently you checkpoint.
>>>
>>> So you're saying that wal_keep_segments is part of the max_wal_size
>>> total, NOT in addition to it?
>>
>> Not sure what you mean. wal_keep_segments is an extra control that can
>> prevent WAL segments from being recycled. It has the same effect as
>> archive_command failing for N most recent segments, if that helps.
>
> I mean, if I have these settings:
>
> max_wal_size* = 256MB
> wal_keep_segments = 8
>
> ... then my max wal size is *still* 256MB, NOT 384MB?

Right.

> If that's the case (and I think it's a good plan), then as a follow-on,
> we should prevent users from setting wal_keep_segments to more than 50%
> of max_wal_size, no?

Not sure if the 50% figure is correct, but I see what you mean: don't
allow setting wal_keep_segments so high that we would exceed
max_wal_size because of it.

- Heikki

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Fabien COELHO 2015-01-05 09:38:00 Re: add modulo (%) operator to pgbench
Previous Message Andres Freund 2015-01-05 09:22:34 Re: pg_basebackup -x/X doesn't play well with archive_mode & wal_keep_segments