Well, MODPYTHON-217 clearly says At this stage it is believed this only occurs with Python 2.3 and shouldn't be a problem with later versions of Python and there are no comments added which contradict this. Here this refers to deadlock when calling PyGILState_Ensure()
in the way in which SWIG generated wrappers do. Is that wrong?
And in comment:23 you say Thus, the suggestion of setting interpreter as 'main_interpreter' when using mod_python would definitely not work and lock ups would be seen if callbacks into Python from C code are occurring. If people are suggesting that it is working, they can't be using that feature of Xapian or have not compiled the SWIG bindings with thread support. I understood that to mean that provided you don't use Xapian features which call from C++ back to Python, you can use Xapian bindings with thread support (which they have unless you regenerate them yourself without -threads
).
So either I've misunderstood here, or I've expressed this badly in my summary. I've tweaked the wording in a couple of places - notably problems in Python 2.3 with the APIs the code uses - is that better?