From 75e50db76e31fe43e1b021a294aa07882fa2fc34 Mon Sep 17 00:00:00 2001 From: yanyanhu Date: Mon, 18 May 2015 22:26:10 -0400 Subject: [PATCH] Fix a bug in scaleutils.truncate_desired The cluster's current min_size/max_size should be used to truncate desired capacity only when new min_size/max_size parameter is not given. There is bug in current implementation for this logic and this patch fixes it. Change-Id: I132181fed57d3941ac6131e8b284ad17859e2222 Closes-Bug: #1456124 --- senlin/common/scaleutils.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/senlin/common/scaleutils.py b/senlin/common/scaleutils.py index 551c4c7ce..847a4d4a3 100644 --- a/senlin/common/scaleutils.py +++ b/senlin/common/scaleutils.py @@ -57,17 +57,18 @@ def truncate_desired(cluster, desired, min_size, max_size): LOG.debug(_("Truncating shrinkage to specified min_size (%s).") % desired) - if desired < cluster.min_size: + if min_size is None and desired < cluster.min_size: desired = cluster.min_size LOG.debug(_("Truncating shrinkage to cluster's min_size (%s).") % desired) - if (max_size is not None and max_size > 0 and desired > max_size): + if max_size is not None and max_size > 0 and desired > max_size: desired = max_size LOG.debug(_("Truncating growth to specified max_size (%s).") % desired) - if desired > cluster.max_size and cluster.max_size > 0: + if (max_size is None and desired > cluster.max_size and + cluster.max_size > 0): desired = cluster.max_size LOG.debug(_("Truncating growth to cluster's max_size (%s).") % desired)