Hi Simon I tried it with sqlite3_shutdown(), didn't help. I was able to reproduce it again using the main app and the safari share plugin.
Main App: Finished writing to db, just opened a new connection to read (after opening a connection I set PRAGMA query_only=1; PRAGMA read_uncommitted=1; and register some custom functions). The connection opened fine however the moment the app ran a SELECT statement I think it coincided with a write from the the Plugin (separate process; it opens a connection, writes and then closes it), boom the -shm file vanished and only the .db and .db-wal files were present in the folder. The -wal was zero bytes. I have a feeling the -shm file got deleted by the plugin while it was in fact in use by the main app (the main app only releases all its connections when closing, so at any given time it has at least one open connection, even when not being used). How can I prevent this from happening? Like I said, using a unit test I was able to reproduce this 1 out of 20 tries but when using the real app and plugin at the same time, I am able to reproduce every 5th try (it seems the app is opening / using / closing connections in a peculiar way). -- Sent from: http://sqlite.1065341.n5.nabble.com/ _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users