pgsql@mohawksoft.com wrote:
>Something to think about:
>
>if you run PostgreSQL with fsync on, but you use the hardware write cache
>on your disk drives, how likely are you to lose data? Obviously, this is a
>fairly limited problem, as it only applies to power down (which you can
>control) or power loss where the risks may be reduced but not eliminated
>with a UPS.
>
>Does it make sense to add a platform specific call that will flush a write
>cache when fsync is enable?
>
>
>
Pete Zaitsev from mysql wrote that there is a special call on Mac OS:
Quoting him:
>Mac OS X also has this "optimization", but at least it provides an
>alternative flush method for Database Servers:
>
>fcntl(fd, F_FULLFSYNC, NULL)
>
>can be used instead of fsync() to get true fsync() behavior.
>
I couldn't confirm this with a quick google search - perhaps someone
with MacOS docs (or mysql sources) should check it.
What might be useful is a test tool that benchmarks fsync: if it's
faster than the rotational speed of a 15k rpm disk then probably someone
caches the write calls.
-- Manfred