On 8/16/19, Ben Asher <benashe...@gmail.com> wrote: > > Is there something we need to do proactively to ensure that schema update > appears immediately from other threads? >
When a database connection has a read transaction open, it continues to see a snapshot of the database as it existed when the read transaction was first opened. Outside changes to the database, including schema changes, are invisible to the connection holding the transaction. This is the "I" in "ACID". As soon as you release the read transaction and start another, all changes will immediately become visible. If you are not deliberately holding a read transaction open, perhaps you are doing so accidentally by failing to sqlite3_reset() or sqlite3_finalize() a prepared statement. You can perhaps figure out which statement that is by running: SELECT sql FROM sqlite_stmt WHERE busy; -- D. Richard Hipp d...@sqlite.org _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users