tree d8c5ddefe6f8197830c848371ad9f6b0f4a7c1ff
parent e068b60605ad5bdf7ec3bde016b4f681171f5443
author Andrew Rodland <andrew@cleverdomain.org> 1493189823 -0400
committer Willy Tarreau <w@1wt.eu> 1493214327 +0200
encoding latin1

BUG/MINOR: hash-balance-factor isn't effective in certain circumstances

in chash_get_server_hash, we find the nearest server entries both
before and after the request hash. If the next and prev entries both
point to the same server, the function would exit early and return that
server, to save work.

Before hash-balance-factor this was a valid optimization -- one of nsrv
and psrv would definitely be chosen, so if they are the same there's no
need to choose between them. But with hash-balance-factor it's possible
that adding another request to that server would overload it
(chash_server_is_eligible returns false) and we go further around the
ring. So it's not valid to return before checking for that.

This commit simply removes the early return, as it provides a minimal
savings even when it's correct.
