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