On 9/26/19, Gwendal Roué <gwendal.r...@gmail.com> wrote: > > My question is: is it possible to prevent checkpoints from completing > successfully when a snapshot is alive? >
That depends on what you mean by "alive"? An sqlite3_snapshot_get() simply records some numbers in private memory of the database connection that called sqlite3_snapshot_get(). There is no way for another process to know that those numbers have been recorded, and hence no way to know that the snapshot exists, and no way to prevent a checkpoint from happening. On the other hand, if you have run sqlite3_snapshot_open() so that there is a transaction open on the snapshot, that takes locks on the database which prevent checkpoints from running to completion and erasing the snapshot. -- 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