On Thu, Nov 16, 2017 at 05:30:05PM +0100, Tim Düsterhus wrote: > William, > > Am 15.11.2017 um 21:17 schrieb William Lallemand: > > These problems have been fixed in the master with the following commits: > > > > 75ea0a06b BUG/MEDIUM: mworker: does not close inherited FD > > fade49d8f BUG/MEDIUM: mworker: does not deinit anymore > > 2f8b31c2c BUG/MEDIUM: mworker: wait again for signals when execvp fail > > 722d4ca0d MINOR: mworker: display an accurate error when the reexec fail > > > > > > The master worker should be able to behave correctly on a execvp failure > > now :-) > > > > I took a look at your commits. While I don't know much about haproxy's > internals they look good to me. > > Just one thing: At the top of `static void mworker_reload(void)` the > Environment is modified using: > > > setenv("HAPROXY_MWORKER_REEXEC", "1", 1); > > Is it necessary to reset that value in case of `execvp` failure? You > don't seem to do so. >
It's not, this variable is only used at the start of the executable to know if it's a restart or not, once it's started it should always be 1. Cheers, -- William Lallemand