Anyone familiar with SQLite source ?

Opened a tecked a few days ago (#1995). However I did not check enough
and found out I only got the error in a subset of the tests;

My problem is that the SHARED lock does not stay after _step() returns
SQLITE_DONE and that this allows another process to update the database
and I end up with a locked database.

Sample;
------------------------------------------------------------------------
sqlite3_prepare()
<=== CORRECT, Another process tries to write, but the db is locked
<=== SHARED lock is on
while (sqlite3_step() == SQLITE_ROW)
      {
      <=== CORRECT, Another process tries to write, but the db is locked
      <=== SHARED lock is on
      }
// Here I get SQLITE_DONE
<=== ERROR, Another process tries to write and it works !!
<=== SHARED lock is off
sqlite3_finalize(...)

If a write occurs in the third position the database get locked until the process that did the write is terminated.
------------------------------------------------------------------------

I would like to find out if the error is in how I compile/link or if
this is a bug/feature in SQLite.
Anyone knows or has a hint where in the source to look ??

/Martin


-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to