when calling load_balance() with "resource1" and sometimes with "resource1;resource2" the call_res static array in do_load_balance is resized, and call_res_no is updated to two.
When calling get_dst_load, call_res_no is passed, instead of rl->n, so get_dst_load is always performed on 2 resources, even when only one is passed.
This can result in get_dst_load returning 0 (either with a CRITICAL error) or in some cases simply the wrong load.
See the attached one-line fix.
(1.7 and earlier are also affected)
Log in to post a comment.