From: Kefu Chai Date: Wed, 3 May 2017 10:28:01 +0000 (+0800) Subject: qa/tasks/ceph_manager: always fix pgp_num when done with thrashosd task X-Git-Tag: v12.0.3~82^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=da1161cbd8b50b8a980e8a3b48154a97f988426c;p=ceph.git qa/tasks/ceph_manager: always fix pgp_num when done with thrashosd task Fixes: http://tracker.ceph.com/issues/19771 Signed-off-by: Kefu Chai --- diff --git a/qa/tasks/ceph_manager.py b/qa/tasks/ceph_manager.py index b7762b866c9..a40bd6c7bca 100644 --- a/qa/tasks/ceph_manager.py +++ b/qa/tasks/ceph_manager.py @@ -649,8 +649,11 @@ class Thrasher: """ if pool is None: pool = self.ceph_manager.get_pool() + force = False + else: + force = True self.log("fixing pg num pool %s" % (pool,)) - if self.ceph_manager.set_pool_pgpnum(pool): + if self.ceph_manager.set_pool_pgpnum(pool, force): self.pools_to_fix_pgp_num.discard(pool) def test_pool_min_size(self): @@ -1671,14 +1674,14 @@ class CephManager: self.pools[pool_name] = new_pg_num return True - def set_pool_pgpnum(self, pool_name): + def set_pool_pgpnum(self, pool_name, force): """ Set pgpnum property of pool_name pool. """ with self.lock: assert isinstance(pool_name, basestring) assert pool_name in self.pools - if self.get_num_creating() > 0: + if not force and self.get_num_creating() > 0: return False self.set_pool_property(pool_name, 'pgp_num', self.pools[pool_name]) return True