<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#ffffff">
<div class="moz-text-html" lang="x-western">
<div>Сокеты не убираются при остановки:</div>
<div><br>
</div>
src/core/ngx_connection.c:  ngx_close_listening_sockets() не запускает
этот код:<br>
<div>
<div><br>
</div>
</div>
<blockquote class="webkit-indent-blockquote"
 style="border: medium none ; margin: 0pt 0pt 0pt 40px; padding: 0px;">#if
(NGX_HAVE_UNIX_DOMAIN)<br>
  <br>
        if (ls[i].sockaddr-&gt;sa_family == AF_UNIX<br>
            &amp;&amp; ngx_process &lt;= NGX_PROCESS_MASTER<br>
            &amp;&amp; ngx_new_binary == 0)<br>
        {<br>
            u_char *name = ls[i].addr_text.data + sizeof("unix:") - 1;<br>
  <br>
            if (ngx_delete_file(name) == -1) {<br>
                ngx_log_error(NGX_LOG_EMERG, cycle-&gt;log,
ngx_socket_errno,<br>
                              ngx_delete_file_n " %s failed", name);<br>
            }<br>
        }<br>
  <br>
#endif</blockquote>
<blockquote class="webkit-indent-blockquote"
 style="border: medium none ; margin: 0pt 0pt 0pt 40px; padding: 0px;"><br>
</blockquote>
хотя защищена от работников, к тому времени когда главный процесс
запускает  ngx_close_listening_sockets(ngx_cycle_t
*cycle),    cycle-&gt;listening.nelts == 0
<div>
<div><br>
<br>
</div>
</div>
</div>
<br>
<br>
On 12/08/2009 06:18 PM, Konstantin Svist wrote:
<blockquote cite="mid:4B1F08EB.2070802@gmail.com" type="cite">P.S. v
0.8.29
  <br>
  <br>
также если kill -HUP &lt;pid&gt;
  <br>
  <br>
2009/12/08 18:13:30 [alert] 16692#0: epoll_ctl(1, 0) failed (1:
Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16692#0: failed to register channel handler
while initializing push module worker (1: Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16691#0: epoll_ctl(1, 0) failed (1:
Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16691#0: failed to register channel handler
while initializing push module worker (1: Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16693#0: epoll_ctl(1, 0) failed (1:
Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16693#0: failed to register channel handler
while initializing push module worker (1: Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16694#0: epoll_ctl(1, 0) failed (1:
Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16694#0: failed to register channel handler
while initializing push module worker (1: Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16695#0: epoll_ctl(1, 32667) failed (9: Bad
file descriptor)
  <br>
2009/12/08 18:13:30 [alert] 16695#0: failed to register channel handler
while initializing push module worker (9: Bad file descriptor)
  <br>
2009/12/08 18:13:30 [alert] 16696#0: epoll_ctl(1, 0) failed (1:
Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16696#0: failed to register channel handler
while initializing push module worker (1: Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16697#0: epoll_ctl(1, 0) failed (1:
Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16697#0: failed to register channel handler
while initializing push module worker (1: Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16698#0: epoll_ctl(1, 0) failed (1:
Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16698#0: failed to register channel handler
while initializing push module worker (1: Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16700#0: epoll_ctl(1, 0) failed (1:
Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16700#0: failed to register channel handler
while initializing push module worker (1: Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16699#0: epoll_ctl(1, 0) failed (1:
Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16699#0: failed to register channel handler
while initializing push module worker (1: Operation not permitted)
  <br>
2009/12/08 18:13:30 [alert] 16650#0: worker process 16691 exited with
fatal code 2 and can not be respawn
  <br>
2009/12/08 18:13:30 [alert] 16650#0: worker process 16692 exited with
fatal code 2 and can not be respawn
  <br>
2009/12/08 18:13:30 [alert] 16650#0: worker process 16693 exited with
fatal code 2 and can not be respawn
  <br>
2009/12/08 18:13:30 [alert] 16650#0: worker process 16694 exited with
fatal code 2 and can not be respawn
  <br>
2009/12/08 18:13:30 [alert] 16650#0: worker process 16695 exited with
fatal code 2 and can not be respawn
  <br>
2009/12/08 18:13:30 [alert] 16650#0: worker process 16696 exited with
fatal code 2 and can not be respawn
  <br>
2009/12/08 18:13:30 [alert] 16650#0: worker process 16697 exited with
fatal code 2 and can not be respawn
  <br>
2009/12/08 18:13:30 [alert] 16650#0: worker process 16698 exited with
fatal code 2 and can not be respawn
  <br>
2009/12/08 18:13:30 [alert] 16650#0: worker process 16700 exited with
fatal code 2 and can not be respawn
  <br>
2009/12/08 18:13:30 [alert] 16650#0: worker process 16699 exited with
fatal code 2 and can not be respawn
  <br>
  <br>
  <br>
  <br>
On 12/08/2009 06:09 PM, Konstantin Svist wrote:
  <br>
  <blockquote type="cite">config:
    <br>
server {
    <br>
  listen unix:/tmp/nginx.sock;
    <br>
 ...
    <br>
    <br>
    <br>
kill -s QUIT &lt;pid&gt;
    <br>
./nginx -c ... не стартует
    <br>
    <br>
в error.log:
    <br>
2009/12/08 18:04:05 [emerg] 13822#0: bind() to unix:/tmp/nginx.sock
failed (98: Address already in use)
    <br>
    <br>
    <br>
    <br>
    <br>
  </blockquote>
  <br>
</blockquote>
</body>
</html>