Hi,

I'm testing 1.8.8(1.8.8-52ec357 snapshot) and seamless reloads
(expose-fd listeners).

I'm testing with this config (missing some default timeouts):
----------------------8<----------------
global
        stats socket /tmp/stats level admin expose-fd listeners

defaults
        mode http
        log global
        option httplog
        retries                 2
        timeout connect         1500ms
        timeout client          10s
        timeout server          10s

listen testme
        bind ipv4@127.0.0.1:8080
        server test_abns_server abns@wpproc1 send-proxy-v2

frontend test_abns
        bind abns@wpproc1 accept-proxy
        http-request deny deny_status 200
----------------------8<----------------

Reloads (kill -USR2 $(cat /tmp/haproxy.pid)) are failing:
"Starting frontend test_abns: cannot listen to socket []"
(And request to 127.0.0.1:8080 timeout).

I guess the problem is that on reload, haproxy is trying
to bind the abns socket again, because (proto_uxst.c) uxst_bind_listener /
uxst_find_compatible_fd doesn't find existing (the one copied over from
old process) file descriptor for this abns socket.

Is uxst_find_compatible_fd only looking for <sockname>.XXXXX.tmp sockets
and ignoring abns sockets where path starts with \0 ?

Using unix socket instead of abns socket makes the reload work.

-Jarno

-- 
Jarno Huuskonen

Reply via email to