Possible issue in Django's Wsgi.py module

36 views
Skip to first unread message

Harel Malka

unread,
Feb 6, 2012, 10:29:29 AM2/6/12
to django...@googlegroups.com
I've done a fairly standard release of our application last night and apache refused to start afterwards. This kept on going even after I rolled back the codebase. 
All I got back was Apache's server error page, and the logs showed the dreaded: 


Premature end of script headers: django.wsgi

I've gone through the whole debugging process, ruled out the usual suspects (expat etc.) and when I run the wsgi application via the python debuger I got back the following trace below. The error came from django/core/handlers/wsgi.py(272)__call__():

batman:/home/harel# /usr/sbin/apache2 -X
['/usr/local/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg', '/usr/local/lib/python26.zip', '/usr/local/lib/python2.6', '/usr/local/lib/python2.6/plat-linux2', '/usr/local/lib/python2.6/lib-tk', '/usr/local/lib/python2.6/lib-old', '/usr/local/lib/python2.6/lib-dynload', '/usr/local/lib/python2.6/site-packages', '/usr/local/lib/python2.6/site-packages/PIL', '/home/glowconsole/', '/home/glowconsole/glowconsole/', '/usr/local/lib/python2.6/site-packages/django']
> /usr/local/lib/python2.6/site-packages/django/core/handlers/wsgi.py(240)__call__()
-> from django.conf import settings
(Pdb) n
> /usr/local/lib/python2.6/site-packages/django/core/handlers/wsgi.py(244)__call__()
-> if self._request_middleware is None:
(Pdb) n
> /usr/local/lib/python2.6/site-packages/django/core/handlers/wsgi.py(245)__call__()
-> self.initLock.acquire()
(Pdb) n
> /usr/local/lib/python2.6/site-packages/django/core/handlers/wsgi.py(246)__call__()
-> try:
(Pdb) n
> /usr/local/lib/python2.6/site-packages/django/core/handlers/wsgi.py(247)__call__()
-> try:
(Pdb) n
> /usr/local/lib/python2.6/site-packages/django/core/handlers/wsgi.py(249)__call__()
-> if self._request_middleware is None:
(Pdb) n
> /usr/local/lib/python2.6/site-packages/django/core/handlers/wsgi.py(250)__call__()
-> self.load_middleware()
(Pdb) n
> /usr/local/lib/python2.6/site-packages/django/core/handlers/wsgi.py(256)__call__()
-> self.initLock.release()
(Pdb) n
> /usr/local/lib/python2.6/site-packages/django/core/handlers/wsgi.py(258)__call__()
-> set_script_prefix(base.get_script_name(environ))
(Pdb) n
> /usr/local/lib/python2.6/site-packages/django/core/handlers/wsgi.py(259)__call__()
-> signals.request_started.send(sender=self.__class__)
(Pdb) n
> /usr/local/lib/python2.6/site-packages/django/core/handlers/wsgi.py(260)__call__()
-> try:
(Pdb) n
> /usr/local/lib/python2.6/site-packages/django/core/handlers/wsgi.py(261)__call__()
-> try:
(Pdb) n
> /usr/local/lib/python2.6/site-packages/django/core/handlers/wsgi.py(262)__call__()
-> request = self.request_class(environ)
(Pdb) n
> /usr/local/lib/python2.6/site-packages/django/core/handlers/wsgi.py(272)__call__()
-> response = self.get_response(request)
(Pdb) l
267  	                        'status_code': 400,
268  	                    }
269  	                )
270  	                response = http.HttpResponseBadRequest()
271  	            else:
272  ->	                response = self.get_response(request)
273  	        finally:
274  	            signals.request_finished.send(sender=self.__class__)
275  	
276  	        try:
277  	            status_text = STATUS_CODE_TEXT[response.status_code]
(Pdb) n
Segmentation fault


I've been batting my head agains the wall since midnight last night. No sleep till this is sorted.
Any ideas? I can't get why this would segfault apache.

Thanks,
Harel

Reply all
Reply to author
Forward
0 new messages