-----Original Message-----
From: sqlite-users-boun...@sqlite.org
[mailto:sqlite-users-boun...@sqlite.org] On Behalf Of Dave Brown
Sent: Wednesday, April 08, 2009 1:16 PM
To: General Discussion of SQLite Database
Subject: Re: [sqlite] Strange sqlite_busy deadlock behavior

I tried the BEGIN EXCLUSIVE method, but now the problem is that thread-A
is in the middle of a query doing sqlite3_step() to get results, and
thread-B tries a "begin exclusive" and gets back SQLITE_BUSY  in the
deadlock situation :)

I guess I am forced to use your 2nd method??

========================
========================
Hi Dave,

A *deadlock* would mean that neither process will ever proceed.
    http://en.wikipedia.org/wiki/Deadlock

In your situation, Thread-B would simply wait until thread-A finishes
--- either via some sort of inter-thread communication, or via polling
on the part of thread-B. 
Thread-B experiences a delay, but no deadlock occurs.

Presumably, thread-A is designed to "step lively" and not dally
unnecessarily.

Of course, the 2nd method is great if you have no concerns about
isolation.
  ("PRAGMA read_uncommitted=ON")

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

Reply via email to