I have been doing some operations on SQLite databases recently.
The other day I ran a command to DELETE a bunch of rows from a 1GB database file and the WAL file got over 8GBs at which point it filled my partition.
Why did it do this? How can I stop it?
Here are some of the PRAGMA's that are setup for this database:
PRAGMA wal_autocheckpoint = 1000 PRAGMA page_size = 1024 PRAGMA max_page_count = 1073741823 PRAGMA journal_size_limit = -1 PRAGMA journal_mode = WAL PRAGMA auto_vacuum = 0
What can I change to stop WAL files getting so big when I want to make the database smaller because it is starting to eat my disk space? And will such a thing affect performance?
I do know the library was custom compiled, but I am not sure of the compilation time options. Can this be found out somehow?
This is running on and SSD in Debian Linux if that is relevant.