Thanks Graham for the response.

I see that the httpd restart is working the way (reload) is supposed to
work. Could you please let us know how that is handled differently?

Thanks & regards,
Sujaikumar

On Wed, Jun 13, 2018 at 9:28 AM, Graham Dumpleton <
graham.dumple...@gmail.com> wrote:

> When using daemon mode of mod_wsgi that is how it works unfortunately.
> This is because Apache only extends gracious shutdown to its own child
> worker processes and not to managed daemon processes.
>
> So the daemon processes only get up to 5 seconds to terminate of their own
> accord when sent the signal from the Apache parent process, before the
> Apache parent will send them a SIGKILL. So if you have long running
> requests they will get terminated if they run longer than 5 seconds.
>
> If this is an issue, the only option you would have is too not use
> logrotate and use Apache's own mechanism for log file rotation, which
> doesn't have this issue because it doesn't need a restart to work.
>
> You could also perhaps use mod_wsgi-express to run separately managed
> instance, using its own log file rotation, and proxy from the main Apache
> instance.
>
> Graham
>
> On 13 Jun 2018, at 1:31 pm, Sujai Kumar <sujai.san...@gmail.com> wrote:
>
> Hello All,
>
> As part of logrotate config, the httpd process is getting reloaded on a
> set time. I was of impression that this should not affect the django
> serving (under apache). On the contrary, I see that the django processes
> are killed abruptly on httpd reload.
>
> I read through the below documentation on apache stop/start/restart/reload
> and it says that the reload should be gracious (which I expected to be
> applicable to underlying django process too)
>
> https://httpd.apache.org/docs/2.4/stopping.html
>
> On the other hand the httpd restart graciously restarts the underlying
> django process (Meaning: If a process is being served by django, all the
> other django processes that are not serving any requests currently goes for
> a restart and the one that is serving currently will wait for the current
> request to be served completely and then respawns again)
>
>
> I was expecting the reload behavior to be gracious to django process. Is
> there some setting that needs to be done specifically to tweak this
> behavior? Thanks.
>
> Thanks & regards,
> Sujaikumar
>
> --
> You received this message because you are subscribed to the Google Groups
> "modwsgi" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to modwsgi+unsubscr...@googlegroups.com.
> To post to this group, send email to modwsgi@googlegroups.com.
> Visit this group at https://groups.google.com/group/modwsgi.
> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "modwsgi" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to modwsgi+unsubscr...@googlegroups.com.
> To post to this group, send email to modwsgi@googlegroups.com.
> Visit this group at https://groups.google.com/group/modwsgi.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"modwsgi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to modwsgi+unsubscr...@googlegroups.com.
To post to this group, send email to modwsgi@googlegroups.com.
Visit this group at https://groups.google.com/group/modwsgi.
For more options, visit https://groups.google.com/d/optout.

Reply via email to