On Fri, Apr 20, 2012 at 10:38 AM, George <pinkisntw...@gmail.com> wrote:
> The webpage [1] mentions that if the sqlite library is linked twice > into the same application there is the possibility that the database > will be corrupted. > > Is this also possible when two different processes (each of which has > only linked the library once) are accessing the same database? If not, > how does the latter case differ from the former? > SQLite is normally proof against corruption when two or more processes are writing to the same database file - unless of course you do something else wrong as described in How To Corrupt An SQLite Database.<http://www.sqlite.org/howtocorrupt.html> The issue with two different versions of the library linked into the same process space causing problems has to do with the fact that when multiple threads are using SQLite, SQLite must use global variables to coordinate access among those threads. But if there are two different versions of the library in the process, there are then two different sets of global variables. One thread might be using one set of global variables and another thread might be using another set. And so the threads do not know about each other and do not properly coordinate their activities. > > > [1] https://www.sqlite.org/howtocorrupt.html > _______________________________________________ > sqlite-users mailing list > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > -- D. Richard Hipp d...@sqlite.org _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users