Let me take a reality check for the case of my own usage.  If I 
guarantee that the following conditions are all true:

All R^n (Read-Read-...-Read) atomic operations are enclosed in BEGIN 
transactions.
All W^n (Write-Write-...-Write) and RMW (Read-Modify-Write) atomic 
operations are enclosed in BEGIN IMMEDIATE transactions.
All connections setup a sqlite3_timeout() much longer than any 
transaction in the "system", including background backups.

Then am I entitled to say that no deadlock will ever occur (barring 
catastrophic condition like hardware failure, memory shortage, corrupt 
DB and such)?

In my low-concurrency, familly-business context, I have no problem at 
all setting 3 hours timeout using the built-in function, when the 
slowest transaction may only take less than 5 minutes.

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

Reply via email to