I am still having this problem, and it happens very frequently.

Some more information

Normally have 7 connections on different threads, 2 of these threads are
writers

Owen
On 20 Jun 2013 09:20, "Owen Haynes" <mad0ho...@gmail.com> wrote:

> Hello,
>
> I am currently having some problems with the unlock notify and getting in
> a state of deadlock.
>
> I am using code based on http://www.sqlite.org/unlock_notify.html, with
> the latest sqlite.
>
> The setup is as follows:
>  - WAL is on
>  - Multi Threaded is on
>  - Temp store is memory
>  - Database is stored in /dev/shm
>  - Synchronous is set as normal
>  - Multi-threading is on
>  - connection is set as SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE |
> SQLITE_OPEN_NOMUTEX | SQLITE_OPEN_SHAREDCACHE
>
> Unlock notify does work I can see my log messages printed when the
> callback is called but sometimes I can end up in the following dead lock
> situation.
>
> Each connection is in its own thread
>
> *Deadlock 1*
> Connection A is using database
> Connection B is waiting on Connection A
> Connection C is waiting on Connection B
>
> Connection A is has finished
> Connection B is waiting on Connection A
> Connection C is waiting on Connection B
>
> *Deadlock 2*
> Connection A is using database
> Connection B is waiting on Connection A
> Connection C is waiting on Connection A
>
> Connection A is has finished
> Connection B is waiting on Connection A
> Connection C is waiting on Connection A
>
> For some reason sometimes the notify callback does not get issued and end
> up with 2 threads waiting for the callback back to be issued.
>
> Connection B is a writer thread the others only read.
>
> Any ideas?
>
> Owen
>
>
>
>
>
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to