From 6dd2f2a9c100e8620d33855e3438e9c00976006a Mon Sep 17 00:00:00 2001 From: chenker Date: Mon, 23 Aug 2021 01:56:08 +0000 Subject: [PATCH] BugFix: Prevent float type variables from being passed to random >>> random.sample([5,10], 1.3) Traceback (most recent call last): File "", line 1, in File "/usr/lib64/python3.6/random.py", line 321, in sample result = [None] * k TypeError: can't multiply sequence by non-int of type 'float' Change-Id: Ifa5dca06f07220512579e4fe3c5c741aeffc71cc --- watcher/decision_engine/strategy/strategies/saving_energy.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/watcher/decision_engine/strategy/strategies/saving_energy.py b/watcher/decision_engine/strategy/strategies/saving_energy.py index 476d2dfb4..acaca3a93 100644 --- a/watcher/decision_engine/strategy/strategies/saving_energy.py +++ b/watcher/decision_engine/strategy/strategies/saving_energy.py @@ -197,9 +197,9 @@ class SavingEnergy(base.SavingEnergyBaseStrategy): def save_energy(self): - need_poweron = max( + need_poweron = int(max( (len(self.with_vms_node_pool) * self.free_used_percent / 100), ( - self.min_free_hosts_num)) + self.min_free_hosts_num))) len_poweron = len(self.free_poweron_node_pool) len_poweroff = len(self.free_poweroff_node_pool) if len_poweron > need_poweron: