SQLite Forum

DB read fails while doing parallel bulk DB updates
Are these updates in the different threads going to neighboring regions in the database? i.e. same table, close by records?

I am asking because you might be interested in checking out the begin-concurrent  branch, which should allow both threads to write concurrently (commits are still serialized) iff the the concurrent write transactions are not touching the same pages.

Also regarding the write amplification of the WAL, please also note that in the conventional journal mode a journal gets written for each transaction and depending on how much data you write in each transaction you could potentially end up doing even more writes than in the WAL case.