On 5/24/2012 9:13 PM, Andrew Cherednik wrote:
On 5/24/2012 9:06 PM, Igor Tandetnik wrote:

Actually, scratch that. Multiple statements running on the same connection will 
never lock each other out. Are multiple instances of your application running 
at the same time, connecting to the
same database?

Yes, they are connecting to the same database over the network.

Then SQLite may not be a very good choice - see http://sqlite.org/whentouse.html , "Client/Server Applications" section.

What exactly do you mean by "database lockout problems"? What error in what API 
call are you getting?

I am getting SQLITE_BUSY error very often, and it does not go away, as if the 
database is dead-locked

Are you resetting your prepared statements?

Do you use explicit transactions? If yes, do any of those follow the pattern where you start with a SELECT, and then perform an INSERT or UPDATE or DELETE (in other words, a transaction starts as a reader, and then wants to upgrade to a writer)? This situation may lead to a deadlock. If you have such transactions, start them with BEGIN IMMEDIATE statement.
--
Igor Tandetnik

_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to