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