2010/1/7 inaf <[email protected]>:
> I think I read pretty much whatever there is to read about these
> errors in this group but still cannot understand what is causing this
> problem in my case..
>
> Every once in a while (very very rarely, compared to the amount of
> traffic being served) I get the following error:
Your selection of error log messages is confusing.
> [Wed Jan 06 22:38:31 2010] [warn] (14)Bad address: mod_wsgi
> (pid=18735): Unable to stat target WSGI script '(null)'.
> [Wed Jan 06 22:38:31 2010] [alert] (14)Bad address: mod_wsgi
> (pid=18735): Request origin could not be validated.
Both the above error messages are generated within mod_wsgi daemon
mode process.
The first error message, because it says '(null)' indicates that
SCRIPT_FILENAME was missing in data passed to mod_wsgi daemon process
however I don't understand how that could occur at this point.
The second error message indicates that some mod_wsgi validation to
protect against malicious attempts to execute arbitrary script as user
that mod_wsgi daemon process runs has failed. This can be a side
effect of corruption indicated from message above, or technically
could indicate an attempt by external code to connect to mod_wsgi
listener sockets directly and try and fake up requests for execution.
> [Wed Jan 06 22:38:31 2010] [error] [client 3.181.52.54] Premature end
> of script headers: <script_name>.wsgi
This though now is a likely indicator that mod_wsgi daemon process crashed.
> [Wed Jan 06 22:38:32 2010] [notice] child pid 2710 exit signal
> Segmentation fault (11)
Problem now is that the pid of the process that crashed doesn't match
that in which original error messages occurred, thus why it is a bit
confusing.
> I have siteminder agent running as well and I notice that bunch of seg
> fault errors associated to that follows along with malloc errors...
>
> Here's my configuration:
>
> Apache/2.0.59 (Unix) mod_jk/1.2.18 mod_wsgi/2.6 Python/2.5.4
> configured
>
> WSGIApplicationGroup %{GLOBAL}
> WSGIDaemonProcess wsgi processes=1 threads=1 display-name=%{GROUP}
You don't need 'processes=1' as will default to single process and
using 'processes=1' instead of allow it to default has subtle side
affect of setting 'wsgi.multiprocess' to True. You should only use
'processes=1' if load balancing across many Apache instances where
each has only single process in daemon process group for that
application.
> WSGIProcessGroup wsgi
>
> Any help and insight would be much appreciated..
I can only suggest trying mod_wsgi 3.1.
Other than that don't really have an answer. It looks like memory
corruption but whether the source is mod_wsgi, another Apache module
or a Python C extension module, don't know.
What third party Python modules do you use which may have a C
extension module component?
Anyway, will have a think about it some more and see if can come up
with any suggestions of things to look for or try. A snippet of log
file covering a longer amount of time may be a good point.
Graham
--
You received this message because you are subscribed to the Google Groups
"modwsgi" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/modwsgi?hl=en.