Re: no universally correct setting for fsync
Kevin Grittner <kevin.grittner@wicourts.gov>
From: "Kevin Grittner" <Kevin.Grittner@wicourts.gov>
To: "Andrew Dunstan" <andrew@dunslane.net>
Cc: <pgsql-hackers@postgresql.org>
Date: 2010-05-07T14:48:53Z
Lists: pgsql-hackers
Andrew Dunstan <andrew@dunslane.net> wrote: > I think the critical question is really whether you are prepared > to lose your database. Precisely; and the docs don't make that at all clear. They mention the possibility of database corruption, but downplay it: | When fsync is disabled, the operating system is allowed to do its | best in buffering, ordering, and delaying writes. This can result | in significantly improved performance. However, if the system | crashes, the results of the last few committed transactions might | be lost in part or whole. In the worst case, unrecoverable data | corruption might occur. > [valid use case for fsync=off] > > So I think its true that there is no universally right answer. > Maybe the criteria mentioned in the last para need tweaking some, > though. I think it goes beyond "tweaking" -- I think we should have a bald statement like "don't turn this off unless you're OK with losing the entire contents of the database cluster." A brief listing of some cases where that is OK might be illustrative. I never meant to suggest any statement in that section is factually wrong; it's just all too rosy, leading people to believe it's no big deal to turn it off. -Kevin