SQLite cares. SQLite is an in-process, transaction, zero-configuration
database that is estimated to be used by over 1 million distinct
applications and to be have over 2 billion deployments. SQLite uses
ordinary disk files in ordinary directories, often selected by the
end-user. There is no system administrator with SQLite, so there is no
opportunity to use a dedicated filesystem with special mount options.
SQLite uses fsync() as a write barrier to assure consistency following a
power loss. In addition, we do everything we can to maximize the amount of
time after the fsync() before we actually do another write where order
matters, in the hopes that the writes will still be ordered on platforms
where fsync() is ignored for whatever reason. Even so, we believe we could
get a significant performance boost and reliability improvement if we had a
reliable write barrier.