diff options
author | Igor Sysoev <igor@sysoev.ru> | 2012-11-20 13:37:55 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2012-11-20 13:37:55 +0000 |
commit | da130acfbe130ce655314ec128bcc1e5f0e334c6 (patch) | |
tree | 254ec4a17bf524fa54db64436303b55b4447e760 /src/os/unix/ngx_process_cycle.c | |
parent | 246cbd21ce2aad389bcf538b6ed420197e1fc132 (diff) | |
download | nginx-da130acfbe130ce655314ec128bcc1e5f0e334c6.tar.gz nginx-da130acfbe130ce655314ec128bcc1e5f0e334c6.zip |
Fixed failure to start cache manager and cache loader processes
if there were more than 512 listening sockets in configuration.
Diffstat (limited to 'src/os/unix/ngx_process_cycle.c')
-rw-r--r-- | src/os/unix/ngx_process_cycle.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/os/unix/ngx_process_cycle.c b/src/os/unix/ngx_process_cycle.c index acafb7f6f..c9b0266ed 100644 --- a/src/os/unix/ngx_process_cycle.c +++ b/src/os/unix/ngx_process_cycle.c @@ -1296,14 +1296,19 @@ ngx_cache_manager_process_cycle(ngx_cycle_t *cycle, void *data) void *ident[4]; ngx_event_t ev; - cycle->connection_n = 512; - + /* + * Set correct process type since closing listening Unix domain socket + * in a master process also removes the Unix domain socket file. + */ ngx_process = NGX_PROCESS_HELPER; - ngx_worker_process_init(cycle, -1); - ngx_close_listening_sockets(cycle); + /* Set a moderate number of connections for a helper process. */ + cycle->connection_n = 512; + + ngx_worker_process_init(cycle, -1); + ngx_memzero(&ev, sizeof(ngx_event_t)); ev.handler = ctx->handler; ev.data = ident; |