mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-21 22:01:31 +02:00
It is the second part of the fix that should solve fairness issues with the connections management inside the SPOE filter. Indeed, in multithreaded mode, when the SPOE detects there are some connections in queue on a server, it closes existing connections by releasing SPOE applets. It is mandatory when a maxconn is set because few connections on a thread may prenvent new connections establishment. The first attempt to fix this bug (9e647e5af "BUG/MEDIUM: spoe: Kill applets if there are pending connections and nbthread > 1") introduced a bug. In pipelining mode, SPOE applets might be closed while some frames are pending for the ACK reply. To fix the bug, in the processing stage, if there are some connections in queue, only truly idle applets may process pending requests. In this case, only one request at a time is processed. And at the end of the processing stage, only truly idle applets may be released. It is an empirical workaround, but it should be good enough to solve contention issues when a low maxconn is set. This patch should partely fix the issue #1340. It must be backported as far as 2.0.
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%