On 5/18/09, Kevin Gale <kev...@transeomedia.com> wrote: > According to the PRAGMA command documentation the database might become > corrupted if the o/s crashes or the computer loses power before the data has > been written to the disk surface. From the information we have from the > customer they continued to use the computer for some time after performing > the final save. This indicates that there could be other situations that > also cause this problem.
It really depends on when the OS decides to flush its cache. All/most OS's cache data you write before actually putting it on the drive. These days, drives also cache writes. When the application says "sync this to disk", it's supposed to wait until the data is physically recorded on the drive before returning. But because of all the caching going on at various levels, it's sometimes hard to ensure this happens, and it's hard to verify that the write really did happen: when you try to read the data, the OS gives it to you, either from its cache (most likely) or from the drive, but you can't tell which was the source. You might want to do some crash tests with a virtual machine to find out what's happening. Good luck! Jim -- Software first. Software lasts! _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users