Hello, does anybody know if there is some possibility to not have WAL file as a normal file on the disk, but only in memory? I understand that all the modifications to the database would get lost in case of the application / OS crash, but for my application, I only need the level of durability based on checkpointing. I just need to guarantee that all the data are properly written to the main database and synchronized to disk when manual (or even automatic) WAL checkpoint is called, but I do not care if I loose data in between the checkpoints. Of course database should never get corrupted.

My goal is to limit the number of IOps being performed to the disk. Currently I use "PRAGMA synchronous = 1" and there is only one process manipulating the database (multiple reader threads, only one writer thread at one moment in time). Or if it is not possible to have WAL in memory only, is there something like “PRAGMA wal_synchronous = none_and_delete_wal_if_corrupted”?

Thanks for suggestions, kind regards,

sqlite-users mailing list

Reply via email to