tree b5da756f5c0218ecdac773c9d9f89d914b6229db
parent 8e40fa25243949c5e63f329058a8ce3f39b6bbdd
author Willy Tarreau <w@1wt.eu> 1567782244 +0200
committer Christopher Faulet <cfaulet@haproxy.com> 1568104720 +0200

BUG/MINOR: lb/leastconn: ignore the server weights for empty servers

As discussed in issue #178, the change brought around 1.9-dev11 by commit
1eb6c55808 ("MINOR: lb: make the leastconn algorithm more accurate")
causes some harm in the situation it tried to improve. By always applying
the server's weight even for no connection, we end up always picking the
same servers for the first connections, so under a low load, if servers
only have either 0 or 1 connections, in practice the same servers will
always be picked.

This patch partially restores the original behaviour but still keeping
the spirit of the aforementioned patch. Now what is done is that servers
with no connections will always be picked first, regardless of their
weight, so they will effectively follow round-robin. Only servers with
one connection or more will see an accurate weight applied.

This patch was developed and tested by @malsumis and @jaroslawr who
reported the initial issue. It should be backported to 2.0 and 1.9.

(cherry picked from commit ed5ac9c78652bd2c75d1c535f54e6bf4191d232e)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
