> On Wed, Mar 6, 2019 at 12:13 PM Alvaro Herrera <alvherre@2ndquadrant.com> wrote: > > I want your dictating software. > > I'm afraid this is just me and a keyboard, but sadly for me you're not > the first person to accuse me of producing giant walls of text.
Well, I don't have a problem reading long texts; my problem is that I'm unable to argue as quickly.
I do buy your argument, though (if reluctantly); in particular I was worried to offer a parameter (to turn off zero-filling of segments) that would enable dangerous behavior, but then I realized we also have fsync=off of which the same thing can be said. So I agree we should have two GUCs, properly explained, with a warning where appropriate.
It sounds like everyone is in agreement that I should get rid of the single COW GUC tunable and provide two different tunables instead. I will update the patch to go back to the original name (wal_recycle) for the original WAL recycling behavior. The default value of that will be true to provide the existing behavior. This matches my original proposal from last year. I will add a new tunable (wal_init_zero) which will control the zero-fill behavior for the WAL file. Again, the default value will be true and provide the existing behavior. Both of these could (should) be set to false for a COW filesystem like ZFS.
If anyone objects to this new approach, let me know, otherwise I'll start preparing an updated patch.