Re: patch to allow disable of WAL recycling

From: David Pacheco <dap(at)joyent(dot)com>
To: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Cc: Jerry Jelinek <jerry(dot)jelinek(at)joyent(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: patch to allow disable of WAL recycling
Date: 2018-07-12 00:25:18
Message-ID: CACukRjP=i_usdkCPCWnGyo8k51-jmP4D3HFdKbVvye8Tf_ehgw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Jul 10, 2018 at 1:34 PM, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
wrote:

> On 2018-Jul-10, Jerry Jelinek wrote:
>
> > 2) Disabling WAL recycling reduces reliability, even on COW filesystems.
>
> I think the problem here is that WAL recycling in normal filesystems
> helps protect the case where filesystem gets full. If you remove it,
> that protection goes out the window. You can claim that people needs to
> make sure to have available disk space, but this does become a problem
> in practice. I think the thing to do is verify what happens with
> recycling off when the disk gets full; is it possible to recover
> afterwards? Is there any corrupt data? What happens if the disk gets
> full just as the new WAL file is being created -- is there a Postgres
> PANIC or something? As I understand, with recycling on it is easy (?)
> to recover, there is no PANIC crash, and no data corruption results.
>

If the result of hitting ENOSPC when creating or writing to a WAL file was
that the database could become corrupted, then wouldn't that risk already
be present (a) on any system, for the whole period from database init until
the maximum number of WAL files was created, and (b) all the time on any
copy-on-write filesystem?

Thanks,
Dave

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tsunakawa, Takayuki 2018-07-12 00:29:12 RE: How can we submit code patches that implement our (pending) patents?
Previous Message Tsunakawa, Takayuki 2018-07-12 00:20:05 RE: How can we submit code patches that implement our (pending) patents?