mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2024-12-14 07:24:32 +00:00
BUG/MINOR: server: make srv_alloc_lb() allocate lb_nodes for consistent hash
The test in srv_alloc_lb() to allocate the lb_nodes[] array used in the
consistent hash was incorrect, it wouldn't do it for consistent hash and
could do it for regular random.
No backport is needed as this was added for dynamic servers in 2.4-dev by
commit f99f77a50
("MEDIUM: server: implement 'add server' cli command").
This commit is contained in:
parent
942b89f7dc
commit
dcb121fd9c
@ -4299,7 +4299,8 @@ static int srv_alloc_lb(struct server *sv, struct proxy *be)
|
||||
sv->lb_nodes_tot = sv->uweight * BE_WEIGHT_SCALE;
|
||||
sv->lb_nodes_now = 0;
|
||||
|
||||
if ((be->lbprm.algo & BE_LB_PARM) == BE_LB_RR_RANDOM) {
|
||||
if (((be->lbprm.algo & (BE_LB_KIND | BE_LB_PARM)) == (BE_LB_KIND_RR | BE_LB_RR_RANDOM)) ||
|
||||
((be->lbprm.algo & (BE_LB_KIND | BE_LB_HASH_TYPE)) == (BE_LB_KIND_HI | BE_LB_HASH_CONS))) {
|
||||
sv->lb_nodes = calloc(sv->lb_nodes_tot, sizeof(*sv->lb_nodes));
|
||||
|
||||
if (!sv->lb_nodes)
|
||||
|
Loading…
Reference in New Issue
Block a user