[DB-SIG] [Web-SIG] WSGI thread affinity/interleaving
Ian Bicking
ianb at colorstudy.com
Sun Dec 18 20:33:05 CET 2005
James Y Knight wrote:
> I'm worried about database access. Most DBAPI adapters have
> threadsafety level 2: "Threads may share the module and
> connections.". So with those, at least, it should be fine to move a
> connection between threads, since "share OK" implies "move OK".
> However, no documentation I've found has said anything separately
> about whether it's safe to _move_ a cursor between threads. It seems
> likely to me that it would not be safe, at least in some database
> adapters. And if it's not safe, that means a WSGI result iterator
> cannot use any DBAPI cursor functionality which seems a drag.
>
> Does anybody have practical experience with the safety of moving a
> DBAPI cursor between threads?
I haven't done that, but SQLite (2?) notably doesn't allow you to move a
connection between threads. I'm not actually sure what problems it
causes if you do move them -- it may simply be an overzealous warning.
CCing DB-SIG -- people there might know more details.
--
Ian Bicking | ianb at colorstudy.com | http://blog.ianbicking.org
More information about the DB-SIG
mailing list