Fri, Mar 25, 2005 at 09:20:16AM -0500: Kervin L. Pierre wrote: > ... > I've been pulling my hair out over > concurrency problems with SQLite 3. > SQLITE_BUSY, SQLITE_SCHEMA, > SQLITE_MISUSE, I get them all. > Basically it should be something of > a 'mini-cookbook' still approach at > SQLite 3 concurrency. > > ... > > I'm willing to give up $100 US for a > helpful tutorial with sufficient > tested real code snipnets. Not asking > for something that would take more > than a day or day to write. If anyone > else thinks this is a good idea and > would like to contribution to this > bounty that would be great.
Hello Kervin, With my experience, i think, one day, when the locking model of SQLite will be stable among versions... it will be possible to write a tutorial. I'm working with SQLite in an heavy multi-threaded multi-databases environment. It took me 1 day to switch from 2.8.x to 3.x and adapt my locking model around SQLite's one. Since version >=3.1.6, it's getting on my nerves. I had to rollback sqlite version to 3.1.5. All my timers and busy timeouts are blowing up due to this: - sqlite3_step() is now much more likely to invoke the busy handler and less likely to return SQLITE_BUSY. Since 3.1.6, i also have another problem on this case: - db is opened by two or more threads. - one thread is creating the db. - other threads seem unable to refresh the schema without locking Ad Vitam the db and returning continiously BUSY. Cheers, -- Guillaume FOUGNIES