zhaojinhong / modwsgi

Automatically exported from code.google.com/p/modwsgi
0 stars 0 forks source link

mod_wsgi 3.x issue with python 2.4 #260

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Hi,

We are running moinmoin wiki's using mod_wsgi. We are running version 1.9.3 of 
moin.

Initially we were using mod_wsgi 2.3 without problems. We upgraded mod_wsgi to 
3.3 and started having issues with the moin wiki. Some pages would load ok, 
others would, after a long time, report an internal server error.

We tested mod_wsgi 2.7 and this did not have the issue. Upgrading to 3.0 
started having this issue.

The apache error log lists the following messages when a page fails to load:

[Thu Mar 08 11:45:59 2012] [info] mod_wsgi (pid=27099): Daemon process deadlock 
timer expired, stopping process 'moin'.
[Thu Mar 08 11:45:59 2012] [info] mod_wsgi (pid=27099): Shutdown requested 
'moin'.
[Thu Mar 08 11:46:04 2012] [info] mod_wsgi (pid=27099): Aborting process 'moin'.
[Thu Mar 08 11:46:04 2012] [error] [client 10.33.138.9] Premature end of script 
headers: sysgrp.wsgi

In the end we upgraded our python to 2.6 and configured mod_wsgi 3.3 to use 
that python version. This has resolved our issue with moin.

According to the mod_wsgi requirements it should work with python 2.4. Are 
there any known issues with mod_wsgi 3.x and older python versions?

What steps will reproduce the problem?

Compile mod_wsgi 3.x against python 2.4 as found on CentOS 5
Configure moin 1.9.3 to use that mod_wsgi
Go to the SystemInfo page in the wiki.

What is the expected output? What do you see instead?

The systeminfo page should return. When using python 2.4, it doesn't. It times 
out and then shows an internal server error. When using python 2.6 with 
mod_wsgi, it works again.

mod_wsgi 2.x was happy with python 2.4.

Please use labels and text to provide additional information.

Original issue reported on code.google.com by rik.th...@gmail.com on 8 Mar 2012 at 3:34

GoogleCodeExporter commented 9 years ago
There are no known issues with Python 2.4.

The error message you saw of 'Daemon process deadlock timer expired, stopping 
process 'moin' likely indicates a third party C extension you are using is not 
designed properly to use Python sub interpreters. In other words it is using 
simplified GIL API, the use of which will deadlock in sub interpreters.

As a workaround you can usually set:

  WSGIApplicationGroup %{GLOBAL}

to force the use of main interpreter.

This issue is documented in:

  http://code.google.com/p/modwsgi/wiki/ApplicationIssues#Python_Simplified_GIL_State_API

Original comment by Graham.Dumpleton@gmail.com on 9 Mar 2012 at 1:18

GoogleCodeExporter commented 9 years ago
Graham,

That could be it. Unfortunately I already upgraded the server to python 2.6 
(which also seems to resolve this), so I can't easily test your workaround.

Thanks for the hint!

Regards,

Rik

Original comment by rik.th...@gmail.com on 18 Mar 2012 at 8:11

GoogleCodeExporter commented 9 years ago
Closing with no action being taken.

Original comment by Graham.Dumpleton@gmail.com on 19 Mar 2012 at 10:32