Nginx fails to accept new connection if active worker crashes
Andrew Alexeev
andrew at nginx.com
Tue Nov 15 09:15:50 UTC 2011
Fasih,
On Nov 15, 2011, at 11:32 AM, faskiri.devel wrote:
> Hi All
>
> I use nginx configured with multiple workers. I also have an nginx
> module that crashed due to an error when I noticed that the module crash
> leaves nginx in a state where it cannot accept new calls.
>
> Removing my module and killing the "active" worker (the one which seems
> to take the new request) with a SIGHUP again caused nginx to hang.
> Killing the other worker(s) seem to be working just fine.
>
> Further investigations(with nginx at debug level) showed that all
> threads are fine but none of the workers are getting the
> ngx_accept_mutex_lock.
>
> Master tries to release the ngx_accept_mutex_lock if the dead process
> was holding it [
> https://svn.nginx.org/nginx/browser/nginx/trunk/src/os/unix/ngx_process.c?annotate=blame#L503]
> but doesnt look like the value is set anywhere.
>
> I have been using nginx only for a couple of months now so I am not very
> sure of the diagnosis, please feel free to correct.
Thanks for spotting this one. It's kind of a known issue and we're working on a fix currently. In the meanwhile you can switch accept mutex off as a workaround (the only downside could potentially be in minor increase of CPU utilization).
> uname -a: Linux faskiri-pc 2.6.32-24-generic #43-Ubuntu SMP Thu Sep 16
> 14:58:24 UTC 2010 x86_64 GNU/Linux
>
> nginx -V: nginx: nginx version: nginx/1.0.5 nginx: built by gcc 4.4.5
> (Ubuntu/Linaro 4.4.4-14ubuntu5) nginx: configure arguments:
> --without-http_ssi_module --without-http_geo_module
> --without-http_fastcgi_module --without-http_uwsgi_module
> --without-http_scgi_module --without-http_memcached_module
> --without-mail_pop3_module --without-mail_imap_module
> --without-mail_smtp_module --with-pcre --with-debug
>
> I will be grateful for any advice.
>
> Best Regards
> +Fasih
>
> Posted at Nginx Forum: http://forum.nginx.org/read.php?2,218359,218359#msg-218359
>
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx
>
More information about the nginx
mailing list