﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	uname	nginx_version
1101	nginx does not respond to SIGHUP/SIGUSR2	tiandrey@…		"We have nginx installed on frontend servers; the configuration is quite simple - nginx decrypts HTTPS traffic and proxies it to backend servers.

The problem is that sometimes nginx stops responding to SIGHUP for configuration updates and to SIGUSR2 for binary updates, seems like it just ignores the signals and does nothing. Today I've even spotted some zombie nginx processes.

I don't see any pattern in this behavior - out of our ten servers there may be two servers with correctly working nginx and eight servers with nginx that ignores signals, or vice versa, although hardware and software configuration of the servers is identical.

Here is a little example of what I am talking about:

{{{
root@server03 ~ # ps axjf | grep [n]ginx
    1  2078  2078  2078 ?           -1 Ss       0   0:03 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
 2078 16829  2078  2078 ?           -1 S    65534 1399:13  \_ nginx: worker process                           
 2078 16830  2078  2078 ?           -1 S    65534 1396:36  \_ nginx: worker process                           
 2078 16831  2078  2078 ?           -1 R    65534 1396:16  \_ nginx: worker process                           
 2078 16832  2078  2078 ?           -1 S    65534 1392:03  \_ nginx: worker process                           
 2078 16833  2078  2078 ?           -1 S    65534 1390:33  \_ nginx: worker process                           
 2078 16834  2078  2078 ?           -1 S    65534 1395:36  \_ nginx: worker process                           
 2078 16835  2078  2078 ?           -1 R    65534 1394:23  \_ nginx: worker process                           
 2078 16836  2078  2078 ?           -1 R    65534 1385:00  \_ nginx: worker process                           
 2078 16837  2078  2078 ?           -1 S    65534 1409:25  \_ nginx: worker process                           
 2078 16839  2078  2078 ?           -1 Z    65534 1296:41  \_ [nginx] <defunct>
 2078 16840  2078  2078 ?           -1 S    65534 1399:22  \_ nginx: worker process                           
 2078 16841  2078  2078 ?           -1 Z    65534 1294:17  \_ [nginx] <defunct>
 2078 16842  2078  2078 ?           -1 R    65534 1401:06  \_ nginx: worker process                           
 2078 16843  2078  2078 ?           -1 R    65534 1398:11  \_ nginx: worker process                           
 2078 16844  2078  2078 ?           -1 R    65534 1398:19  \_ nginx: worker process                           
 2078 16845  2078  2078 ?           -1 S    65534   4:22  \_ nginx: cache manager process                    
 2078 54245  2078  2078 ?           -1 R    65534 533:57  \_ nginx: worker process                           
root@server03 ~ # cat /run/nginx.pid 
2078
root@server03 ~ # kill -HUP $(cat /run/nginx.pid)
root@server03 ~ # kill -USR2 $(cat /run/nginx.pid)
root@server03 ~ # ps axjf | grep [n]ginx         
    1  2078  2078  2078 ?           -1 Ss       0   0:03 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
 2078 16829  2078  2078 ?           -1 R    65534 1399:41  \_ nginx: worker process                           
 2078 16830  2078  2078 ?           -1 R    65534 1397:04  \_ nginx: worker process                           
 2078 16831  2078  2078 ?           -1 R    65534 1396:44  \_ nginx: worker process                           
 2078 16832  2078  2078 ?           -1 S    65534 1392:32  \_ nginx: worker process                           
 2078 16833  2078  2078 ?           -1 S    65534 1391:01  \_ nginx: worker process                           
 2078 16834  2078  2078 ?           -1 S    65534 1396:07  \_ nginx: worker process                           
 2078 16835  2078  2078 ?           -1 S    65534 1394:51  \_ nginx: worker process                           
 2078 16836  2078  2078 ?           -1 S    65534 1385:29  \_ nginx: worker process                           
 2078 16837  2078  2078 ?           -1 R    65534 1409:54  \_ nginx: worker process                           
 2078 16839  2078  2078 ?           -1 Z    65534 1296:41  \_ [nginx] <defunct>
 2078 16840  2078  2078 ?           -1 S    65534 1399:51  \_ nginx: worker process                           
 2078 16841  2078  2078 ?           -1 Z    65534 1294:17  \_ [nginx] <defunct>
 2078 16842  2078  2078 ?           -1 S    65534 1401:35  \_ nginx: worker process                           
 2078 16843  2078  2078 ?           -1 S    65534 1398:40  \_ nginx: worker process                           
 2078 16844  2078  2078 ?           -1 R    65534 1398:46  \_ nginx: worker process                           
 2078 16845  2078  2078 ?           -1 S    65534   4:22  \_ nginx: cache manager process                    
 2078 54245  2078  2078 ?           -1 S    65534 534:25  \_ nginx: worker process                           
root@server03 ~ # nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
}}}

After restart nginx works fine for some amount of time, usually for several days."	defect	closed	major		nginx-core	1.10.x	worksforme			Linux server03 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-2+deb8u3 (2016-07-02) x86_64 GNU/Linux	"nginx version: nginx/1.10.1
built by gcc 4.9.2 (Debian 4.9.2-10) 
built with OpenSSL 1.0.1k 8 Jan 2015 (running with OpenSSL 1.0.1t  3 May 2016)
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/run/nginx.pid --lock-path=/run/lock/nginx.lock --http-client-body-temp-path=/run/shm/body_temp --http-proxy-temp-path=/run/shm/proxy_temp --http-fastcgi-temp-path=/run/shm/fastcgi_temp --http-uwsgi-temp-path=/run/shm/uwsgi_temp --http-scgi-temp-path=/run/shm/scgi_temp --with-http_ssl_module --with-http_realip_module --with-http_sub_module --with-http_dav_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_stub_status_module --with-mail --with-http_v2_module --with-http_geoip_module --with-select_module --with-http_auth_request_module --with-poll_module --with-debug"
