mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-21 13:51:26 +02:00
There have been a large number of issues reported with conn_cur synchronization because the concept is wrong. In an active-passive setup, pushing the local connections count from the active node to the passive one will result in the passive node to have a higher counter than the real number of connections. Due to this, after a switchover, it will never be able to close enough connections to go down to zero. The same commonly happens on reloads since the new process preloads its values from the old process, and if no connection happens for a key after the value is learned, it is impossible to reset the previous ones. In active-active setups it's a bit different, as the number of connections reflects the number on the peer that pushed last. This patch solves this by marking the "conn_cur" local and preventing it from being learned from peers. It is still pushed, however, so that any monitoring system that collects values from the peers will still see it. The patch is tiny and trivially backportable. While a change of behavior in stable branches is never welcome, it remains possible to fix issues if reports become frequent.
The HAProxy documentation has been split into a number of different files for ease of use. Please refer to the following files depending on what you're looking for : - INSTALL for instructions on how to build and install HAProxy - BRANCHES to understand the project's life cycle and what version to use - LICENSE for the project's license - CONTRIBUTING for the process to follow to submit contributions The more detailed documentation is located into the doc/ directory : - doc/intro.txt for a quick introduction on HAProxy - doc/configuration.txt for the configuration's reference manual - doc/lua.txt for the Lua's reference manual - doc/SPOE.txt for how to use the SPOE engine - doc/network-namespaces.txt for how to use network namespaces under Linux - doc/management.txt for the management guide - doc/regression-testing.txt for how to use the regression testing suite - doc/peers.txt for the peers protocol reference - doc/coding-style.txt for how to adopt HAProxy's coding style - doc/internals for developer-specific documentation (not all up to date)
Description
Languages
C
98.1%
Shell
0.8%
Makefile
0.5%
Lua
0.2%
Python
0.2%