I have just read the archive mailing list from 16/08/2004, and it looks like this behaviour is on purpose (checkin 1879).
My mistake, Rob. -----Original Message----- From: Rob Groves [mailto:[EMAIL PROTECTED] Sent: 31 August 2004 22:17 To: [EMAIL PROTECTED] Subject: [sqlite] Locking in 3.0.5 Hi, I have observed different behaviour between 3.0.3 and 3.0.5. I didn't download 3.0.4 so can't comment on that. I am using two threads and setting a busy timeout on each with sqlite3_busy_timeout(). In 3.0.3 two threads trying to update the same row(s) would both retry until the one with the shortest busy timeout expired, and SQLITE_BUSY is returned. In 3.0.5, the 2nd thread trying to obtain the lock returns SQLITE_BUSY immediately. Any ideas? Rob.