LUSetInstanceParam currently assumes that the 'memory' value of a call_instance_info result is an integer, while the rest of the code explicitely converts it to int(). Converting it to int works around a bug which prevents changing the memory allocation of a live instance if the remote call returns the memory in string format.
Signed-off-by: Guido Trotter <[email protected]> --- lib/cmdlib.py | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/lib/cmdlib.py b/lib/cmdlib.py index ab40449..f97957f 100644 --- a/lib/cmdlib.py +++ b/lib/cmdlib.py @@ -5898,7 +5898,7 @@ class LUSetInstanceParams(LogicalUnit): self.warn.append("Can't get info from primary node %s" % pnode) else: if not instance_info.failed and instance_info.data: - current_mem = instance_info.data['memory'] + current_mem = int(instance_info.data['memory']) else: # Assume instance not running # (there is a slight race condition here, but it's not very probable, -- 1.5.6.5
