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.