Hi everyone,

thanks for the replies, but I'm a bit confused. It appears "full" is the new "normal"?

To me, "normal" just by it's name implies it's the default. And http://sqlite.org/pragma.html says "When synchronous is NORMAL (1, the default)," and it continues with "There is a very small (though non-zero) chance that a power failure at just the wrong time could corrupt the database in NORMAL mode. But in practice, you are more likely to suffer a catastrophic disk failure or some other unrecoverable hardware fault. So NORMAL is the default mode." This makes it sounds like FULL is for obsessive-compulsive applications. Finally, on my journaled filesystem, an insert takes about 0.8 seconds out of the box with FULL, which isn't so great.

Did something change? Is this a documentation bug? Is my system wacky (well, no mac comments please)? What am I missing?

I'm happy to write a patch to set the default value at compile time, if anyone thinks it would be useful.

thanks all.

--nickg





--
On Jun 1, 2005, at 12:48 PM, Cronos wrote:

While I can send 'set pragma synchronous=normal' at every write ...


You don't have to execute the pragma for every write.
Once you've set synchronous=normal, it stays normal
until you close and reopen the database.


Not strictly true, in 3.2.1 it gets reset if you change the cache_size - see
ticket 1260, just been fixed I think.



Reply via email to