Re: [PATCH 0/4] (RESEND) ext3[34] barrier changes
From: Greg Smith
Date: Wed May 21 2008 - 16:27:32 EST
On Tue, 20 May 2008, Jamie Lokier wrote:
I doubt if common unix mail transports use F_FULLSYNC on Darwin
instead of fsync(), before reporting a mail received safely, but they
probably should. I recall SQLite does use it (unless I'm confusing
it with some other database).
As far as I know that made its way first into MySQL 4.1.9 (2005-01), then
into SQLite (2005-02), then into PostgreSQL (2005-04), so the database
coders all picked that up around the same time and have been using it for
years now.
http://www.mail-archive.com/sqlite-users@xxxxxxxxxx/msg06502.html shows
part of that timeline, and even includes some useful comments on the
underlying Darwin implementation from that mailing list. That suggests
one reason Apple is able to make this work is that their selection process
for hard drives requires the drive honors the request to flush its cache
they send. The implied caveat there is that even their F_FULLSYNC won't
necessarily work with external Firewire/USB drives where that's out of
their control.
--
* Greg Smith gsmith@xxxxxxxxxxxxx http://www.gregsmith.com Baltimore, MD
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/