[Xapian-tickets] [Xapian] #185: Deadlocks with apache mod_python and mod_wsgi

Xapian nobody at xapian.org
Wed Apr 29 07:59:02 BST 2009


#185: Deadlocks with apache mod_python and mod_wsgi
-----------------------------+----------------------------------------------
 Reporter:  richard          |        Owner:  olly     
     Type:  defect           |       Status:  new      
 Priority:  normal           |    Milestone:  1.1.1    
Component:  Xapian-bindings  |      Version:  SVN trunk
 Severity:  normal           |   Resolution:           
 Keywords:                   |    Blockedby:           
 Platform:  All              |     Blocking:           
-----------------------------+----------------------------------------------
Changes (by olly):

  * owner:  richard => olly
  * status:  assigned => new
  * milestone:  => 1.1.1


Comment:

 I've been looking into this issue.

 If I patch SWIG to not generate all the calls to lock the GIL in
 situations where it is already locked, then this seems to fix the
 mod_python lock-ups.  It's also knocks 11% of the stripped size of
 _xapian.so, and pythontest.py takes 2.7% less time to run (according to
 cachegrind's cycle estimate).

 I'm going to see about applying this SWIG patch upstream as I think it
 will benefit other SWIG users too.  Patch attached here for now, plus a
 version which checks that the GIL is locked when we assume it is (if not,
 we abort) and that it isn't locked when we assume it isn't (if not, we
 deadlock).

-- 
Ticket URL: <http://trac.xapian.org/ticket/185#comment:36>
Xapian <http://xapian.org/>
Xapian



More information about the Xapian-tickets mailing list