My database is opened in sqlite **MULTITHREADING(2)** mode, with one connection per-thread.<br> Journal mode is **WAL**.<br> During lifetime of the application I am using **sqlite3_backup** API to save an active database connection to an external file. What I found is that after I finished successfully to back the database, and after a successful call to **sqlite3_backup_finish()**, for the new file created I have two journal files left on the disk. Files extensions are '-wal' and '-shm' (e.g. - 'newFile.db-wal', 'newFile.db-shm').<br> The '-wal' file is empty as expected for gracefull connection shutdown. I have two questions: 1. Can I configure sqlite to delete empty journal files? 2. Can I configure sqlite not to use shared-memory files? *Reason why I think I do not need shared-memory files: My application is using multiple connections - one connection per-thread - **BUT** I do not support multiple applications accessing the same database.* Thanks for any tip, Pazo