On 1 Feb 2016, at 11:24am, Rowan Worth <rowanw at dugeo.com> wrote:
> 
> I take your point, but as Florian pointed out it's not just one file
> system; its a somewhat well known quirk of POSIX fsync.
> http://blog.httrack.com/blog/2013/11/15/everything-you-always-wanted-to-know-about-fsync/
> 
> It's a bit disingenuous to say "the file system requires a particular dance
> to ensure an unlink persists on disk, but the dance is excessively complex
> so we're going to skip it and blame any problems on the file system." The
> fact remains that sqlite returned SQLITE_OK for a transaction that never
> succeeded, because it didn't take the steps required for the i/o to hit
> disk.

Well, that's a fair point.  The problem is that SQLite does not know it's 
running on POSIX.  It does, however, have different VFSes for different 
platforms.  So the logical place to put this would be in the VFS.  At least 
that's what it looks like to me but I don't know much about the programming 
that goes into SQLite.

Simon.

Reply via email to