On 7 Oct 2019, at 9:56am, Fredrik Larsen <frel...@gmail.com> wrote:

> nowhere does it warn about severe regression with
> unbounded WAL-size [snip]

There are tons of bad stuff the documentation doesn't warn you about.  You 
might want to read

<https://sqlite.org/wal.html#avoiding_excessively_large_wal_files>

again and get back to us if you have further questions.  There's a reason that 
there's a whole section on avoiding excessively large WAL files.

At your level of sophistication you can probably guess the fallout from the 
things you're doing.  The sort of stuff you're doing is rare and obscure.  
Almost all users of SQLite pick a journalling mode and let SQLite handle 
everything itself.

> Given that we disable ceckpointing, can we assume that the main
> database-file will never be modified, and therefor could potentially be 
> mounted read-only?

You are correct that the WAL file contains database pages, rather than SQL 
statements.  A recent change to the way WAL files work means that if an 
already-modified page is modified again, the page appears in the WAL file only 
once.  So the size of the WAL file depends more on how much new data gets 
written to the database than the total number of changes.

Presumably you mean you disable /automatic/ checkpointing.  If you disable all 
checkpointing your writes never get completed.  Sooner or later you are going 
to have to let SQLite modify your database file, so no, you can't mount it 
read-only if you want to make changes.
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to