From 2754fbcfd6ce7f812a1c1b59dc8ddb0a44721f95 Mon Sep 17 00:00:00 2001 From: Nenad Merdanovic Date: Sun, 12 Mar 2017 21:56:56 +0100 Subject: [PATCH] CLEANUP: Replace repeated code to count usable servers with be_usable_srv() 2 places were using an open-coded implementation of this function to count available servers. Note that the avg_queue_size() fetch didn't check that the proxy was in STOPPED state so it would possibly return a wrong server count here but that wouldn't impact the returned value. Signed-off-by: Nenad Merdanovic --- src/backend.c | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/src/backend.c b/src/backend.c index 5e2b8fc56..b0e03323a 100644 --- a/src/backend.c +++ b/src/backend.c @@ -1614,14 +1614,7 @@ smp_fetch_nbsrv(const struct arg *args, struct sample *smp, const char *kw, void smp->data.type = SMP_T_SINT; px = args->data.prx; - if (px->state == PR_STSTOPPED) - smp->data.u.sint = 0; - else if (px->srv_act) - smp->data.u.sint = px->srv_act; - else if (px->lbprm.fbck) - smp->data.u.sint = 1; - else - smp->data.u.sint = px->srv_bck; + smp->data.u.sint = be_usable_srv(px); return 1; } @@ -1780,12 +1773,7 @@ smp_fetch_avg_queue_size(const struct arg *args, struct sample *smp, const char smp->data.type = SMP_T_SINT; px = args->data.prx; - if (px->srv_act) - nbsrv = px->srv_act; - else if (px->lbprm.fbck) - nbsrv = 1; - else - nbsrv = px->srv_bck; + nbsrv = be_usable_srv(px); if (nbsrv > 0) smp->data.u.sint = (px->totpend + nbsrv - 1) / nbsrv;