From 75e914fbaf80badd6d88c92b557fe1bce14dfaec Mon Sep 17 00:00:00 2001 From: Iustin Pop <iustin@google.com> Date: Mon, 29 Jun 2009 13:02:03 +0200 Subject: [PATCH] Fix adjustement of candidates in cluster modify The code for adjusting the candidate pool size was done after the config update, and this means we triggered the save of the config file without fixing the candidate pool, which aborts with an error. The patch just moves it above. The old comment was valid, but we anyway save the config file in MaintainCandidatePool, so this should be safe. Signed-off-by: Iustin Pop <iustin@google.com> Reviewed-by: Guido Trotter <ultrotter@google.com> --- lib/cmdlib.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/lib/cmdlib.py b/lib/cmdlib.py index 1317275fe..5d353c82f 100644 --- a/lib/cmdlib.py +++ b/lib/cmdlib.py @@ -1556,14 +1556,11 @@ class LUSetClusterParams(LogicalUnit): self.cluster.beparams[constants.BEGR_DEFAULT] = self.new_beparams if self.op.candidate_pool_size is not None: self.cluster.candidate_pool_size = self.op.candidate_pool_size + # we need to update the pool size here, otherwise the save will fail + _AdjustCandidatePool(self) self.cfg.Update(self.cluster) - # we want to update nodes after the cluster so that if any errors - # happen, we have recorded and saved the cluster info - if self.op.candidate_pool_size is not None: - _AdjustCandidatePool(self) - class LURedistributeConfig(NoHooksLU): """Force the redistribution of cluster configuration. -- GitLab