Thank's Igor, uhh... I should have read this more carefully. I understand now that the commit may in fact need to wait for some other shared locks...
sorry for the noise Marcus > Marcus Grimm wrote: >> I'm wondering how it can happen that after a successfull >> "BEGIN TRANSACTION;" statement and some inserts or update >> statements, that the final COMMIT failes with a busy error code ? >> >> Shouldn't that be impossible because there can be only one running >> transaction ? > > There may be multiple connections to the same database, each of which > could start a transaction. For more details, see > > http://sqlite.org/lockingv3.html > http://sqlite.org/lang_transaction.html > >> Everthing was working perfect until the user started a maintenance >> tool that opens a single connection to the same sqlite database >> while the server application was still running on the same hardware. >> Now it happends that the server was not able to get a >> COMMIT statement through > > You cannot commit any changes while another connection is reading from > the database. > > Igor Tandetnik > > > > _______________________________________________ > sqlite-users mailing list > [email protected] > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > _______________________________________________ sqlite-users mailing list [email protected] http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

