▲ | agwa 4 days ago | |||||||||||||||||||||||||||||||||||||
This is what the documentation (https://sqlite.org/pragma.html#pragma_synchronous) says about EXTRA: > EXTRA synchronous is like FULL with the addition that the directory containing a rollback journal is synced after that journal is unlinked to commit a transaction in DELETE mode So it only has an effect in DELETE mode; WAL mode doesn't use a rollback journal. That said, the documentation about this is pretty confusing. | ||||||||||||||||||||||||||||||||||||||
▲ | nh2 4 days ago | parent [-] | |||||||||||||||||||||||||||||||||||||
Yes, I'm talking about the fact that sqlite in its default (journal_mode = DELETE) is not durable. Which in my opinion is worse than whatever may apply to WAL mode, because WAL is something a user needs to explicitly enable. If it is true as stated, then I also don't find it very confusing, but would definitely appreciate if it were more explicit, replacing "will not corrupt the database" by "will not corrupt the database (but may still lose committed transactions on power loss)", and I certainly find that a very bad default. | ||||||||||||||||||||||||||||||||||||||
|