[Xapian-discuss] minor problem

James Aylett james-xapian at tartarus.org
Fri Jan 11 03:00:48 GMT 2008

On Fri, Jan 11, 2008 at 12:49:43AM +0000, Olly Betts wrote:

> > ISTR that SQLite knows about this. It doesn't work round it, IIRC, it
> > just tells you it's a problem in the documentation somewhere. (SQLite
> > believes that Threads Are Evil.)
> Do you mean their FAQ #6, which says (amongst other things):
>     Prior to version 3.3.1, an sqlite3 structure could only be used in
>     the same thread that called sqlite3_open  to create it. You could
>     not open a database in one thread then pass the handle off to
>     another thread for it to use. This was due to limitations (bugs?) in
>     many common threading implementations such as on RedHat9.
>     Specifically, an fcntl() lock created by one thread cannot be
>     removed or modified by a different thread on the troublesome
>     systems. And since SQLite uses fcntl() locks heavily for concurrency
>     control, serious problems arose if you start moving database
>     connections across threads.

That wasn't what I meant, no. I'm probably misremembering; whether I'm
misremembering that it was SQLite or the details are another
matter... probably the latter.


  James Aylett                                                  xapian.org
  james at tartarus.org                               uncertaintydivision.org

More information about the Xapian-discuss mailing list