On Jul 19, 2007, at 1:34 AM, Tim Cutts wrote:
Those look like much the same caveats to me. At least later
versions of Mac OS X supply the fcntl() methods to specifically ask
the driver to commit (although how it can possibly guarantee that I
don't know - the device could be a long way away across a SAN);
that possibility does not exist on Linux, as far as I know,
although I'm willing to be corrected.
Any code that relies on sync(), or any other method which just
results in a *request* to flush the data to the physical storage,
is going to have small windows where the data is at risk. Enter
UPS, stage right. :-)
Mind you, MySQL is perfectly capable of corrupting its own data
without relying on rare hardware and power failures to blame for it.
Tim
a bunch of work on i/o barriers (FUA) was done a while back on the
linux side. (i'm not sure about a special fcntl call. that sounds
strange). fua was even plumbed into some userspace utils (ie:
sg_dd), but i haven't kept up with it to see if its actually achieved
end-to-end yet, and if so, on what hardware.
jason
_______________________________________________
Beowulf mailing list, Beowulf@beowulf.org
To change your subscription (digest mode or unsubscribe) visit
http://www.beowulf.org/mailman/listinfo/beowulf