> Did you try the seamless reload using -x without the master-worker?

I was looking into the "-x" option and it looks like simply adding "expose-fd 
listeners" to my stats socket has fixed this issue for me. Sending SIGUSR2 to 
the master process now works as expected. Is that option required for this 
reload model?

> Did you try launching a new haproxy process with the -sf option, without using
the master-worker?

Yes, and that also failed with the same "cannot bind" error.

> What is your operating system and version exactly?

We are using SmartOS:
# uname -a
SunOS ops-dev-lb03 5.11 joyent_20170315T185612Z i86pc i386 i86pc Solaris

> I think the old processes did not receive the SIGTTOU for an unknown reason,
or did not unbind once it received the signal.

> Maybe you could try to compare what's happening on your solaris-like system 
> and
your ubuntu with the -dR option, using strace on linux and truss on solaris.

I verified using dtrace that the worker is indeed receiving the SIGTTOU signal 
from the master (200 times), so the worker must not have been unbinding.


Anthony


________________________________________
From: William Lallemand <[email protected]>
Sent: Friday, December 8, 2017 1:54 PM
To: Anthony Via
Cc: [email protected]
Subject: Re: Testing master-worker reloads on HAProxy 1.8

> On Wed, Dec 06, 2017 at 10:48:23PM +0000, Anthony Via wrote:
> > I am testing seamless reloads on HAProxy 1.8.0 using the master-worker
> > model and am running into the following when sending SIGUSR2 to the master
> > process

Sorry I misread, my explanation in the previous post is not correct for the
seamless reload (-x + expose-fd), but only for a "classic" reload.

During a seamless reload, the new process try to get the FDs of the listeners
using the unix socket.

Did you try the seamless reload using -x without the master-worker?

--
William Lallemand




Reply via email to