On Wed, Mar 6, 2019 at 10:55 AM Andrew Dunstan <andrew.duns...@2ndquadrant.com> wrote: > > I *really* dislike this. For one thing, it means that users don't > > have control over the behaviors individually. For another, the > > documentation is now quite imprecise about what the option actually > > does, while expecting users to figure out whether those behaviors are > > acceptable or preferable in their environment. It lists recycling of > > WAL files and zero-filling of those files as examples of behavior > > changes, but it does not say that those are the only changes, or even > > that they are made in all cases. > > So you want two options, like wal_recycle_files and wal_zero_fill, both > defaulting to true? Is there a reasonably use case for turning one off > without the other?
I don't know whether there's a use case for that, and that's one of the things that worries me. I know, though, that if we have two parameters, then if there is a use case for it, people will be able to meet that use case without submitting a patch. On the other hand, if we had convincing evidence that those two things should always go together, that would be fine, too. But I don't see that anyone has made an argument that such a thing is necessarily true outside of ZFS. I actually wouldn't find it very surprising if disabling WAL recycling is sometimes beneficial even on ext4. The fact that we haven't found such cases on this thread doesn't mean they don't exist. On the other hand I think the wal_zero_fill behavior is not about performance but about reliability, so you can't afford to turn that on just because non-recycling happens to be faster on your machine. > Alternatively, we could remove the 'for example" wording, which I agree > is unfortunate. Yeah. We seem to sometimes like to avoid documenting specifics for fear that, should they change, we'd have to update the documentation. But I think that just makes the documentation less useful. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company