Geir Magnusson Jr. wrote:
On Jan 4, 2009, at 2:59 PM, Damien Katz wrote:
What you say is possible, but doesn't seem too likely as I don't ever
recall any report of a corrupt db on Linux, but before the F_FILESYNC
change in Erlang we would see reports of corruptions on OS X due to
power loss. Since the change, we've had no reports of corrupt
databases on OS X or Linux.
Have you seen the correlation between the # of pirates and global
warming? :)
There may be correlation here between the Erlang update and
corruption, but I don't see the causality - fsync() on linux should
only get as far as the on-device buffering if it does write buffering,
whereas if the OS X docs are truthful, the F_FILESYNC fcntl() pushs
the bits to the rust on the platter. Maybe they fixed something else
in that erlang update, or maybe the universe is smiling upon CouchDB
users or ....
. . . maybe the ec2 virtual machine instance and abstracted storage
thingie isn't getting to the rust, even though from the point of view of
the inside of the VM it thinks it has. I don't know for sure, but a
comparitive on a real Linux box would be worthwhile. Do you have some
simple benchmark code to share and I will give it a go on a few Linux
machines. Would also be interesting to compare SSD to rotating HDD.
Alan.