2009/3/19 Graham Dumpleton <[email protected]>:
> 2009/3/19 Pete <[email protected]>:
>>
>> On Mar 18, 3:35 pm, Graham Dumpleton <[email protected]>
>> wrote:
>>
>>> This is not an error from mod_wsgi but from Django and has been
>>> encountered by various people and not just with mod_wsgi.
>>
>> Thanks Graham. I dug through a number of Django references before
>> posting here. I'm on Django 1.0.X so Django ticket #8221 has been
>> fixed and you'll notice that no arguments are being sent to the
>> reverse (as expected) so it is not a regex urlresolver issue. I can
>> view the same page w/ the same content hundreds of times without
>> having an issue, but every day or 2 I get the error.
>>
>> The reason I bring it up here is that the only common thread I can
>> find is the mod_wsgi activity in my Apache error log (pasted in the
>> original email) about it loading the wsgi script at the same time the
>> error occurs. Does mod_wsgi reload the script when 500s are
>> encountered?
>
> No.
>
> But, by your configuration you have:
>
>  maximum-requests=500 inactivity-timeout=600
>
> This means the daemon processes are restarted every 500 requests. This
> is a quite low value and wouldn't recommend it. One would only even
> use this option if your application has a problem with memory leaks,
> either explicit or through a poorly written caching system. So, why
> are you using maximum requests option?
>
> The inactivity timeout would only kick in after 10 minutes of no
> requests at all and if your application is used a lot, in practice
> shouldn't ever occur. What was your reasoning for setting the
> inactivity timeout?
>
>> If not, is it possible for unexpected behavior to occur
>> if we try to access the app during the wsgi script load process?
>
> No, not at least due to an access occurring while the reloading is
> happening, as requests will just be queued.
>
> Your problem could be though that you are missing a required import
> dependency. That is, something which maps strings to module/functions
> is being triggered without the module it requires to work not having
> been imported. It may work later in the life of the process because
> something has as a side effect later imported it. Thus you have an
> ordering issue and whether things works depends order URLs are
> requested. I give imports here as a possibility, may it may be some
> other form of initialisation.

BTW, one way of checking for whether it is an issue with the order in
which URLs are visited, is to use:

  WSGIDaemonProcess project processes=5 threads=1 maximum-requests=1

It may be slow, but it will result in every request being handled in
new process, ie., CGI like. Use your application and see if you hit a
specific URL which consistently fails with the error. That is, it is
showing you problem URLs whose environment isn't set up properly for
them to run properly.

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
-~----------~----~----~----~------~----~------~--~---

Reply via email to