Ludvig Strigeus wrote:
> Stuff below relates to IDE drives.
> 
> On Linux, the fsync() call doesn't actually force that the
> data reaches the
> physical disk platters. It just makes sure that the data is
> sent to the
> cache on the disk.

I do not believe the above is exactly correct -- fsync relies on the
response of the device(disk), the problem is that IDE disk manufacturers
return to fsync that the data is written, when in actuality it still
remains in cache. This is a "failure" or a least "playing loosely with
what to do with fsync calls" on the part of the IDE disk manufacturers.

Having said that, the below note is probably not correct either --
unless windows has some 'extra' ability to know that when the IDE drive
returns "written to media" (but data is still in cache) that the IDE
drive is lying.


> On Windows, FlushFileBuffers() forces the disk to actually
> write the data to
> the physical disk.
> 
> This explains why sqlite on Linux is at least 5 times faster than on
> Windows. It also means that Sqlite is not ACID when using
> Linux with IDE
> drives.
> 


reid

Reply via email to