From: Patrick Donnelly Date: Tue, 15 Nov 2016 19:42:08 +0000 (-0500) Subject: cephfs: get new fsmap after marking clusters down X-Git-Tag: v11.1.1~58^2^2~36^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=a9b51c3e6de5d11485ef54d50fe2f1ed2a050bfc;p=ceph.git cephfs: get new fsmap after marking clusters down Credit to John Spray for identifying the problem/cause. Fixes: http://tracker.ceph.com/issues/17894 Signed-off-by: Patrick Donnelly --- diff --git a/tasks/cephfs/filesystem.py b/tasks/cephfs/filesystem.py index 6b73ed4f2f4..2a5fb7f2aac 100644 --- a/tasks/cephfs/filesystem.py +++ b/tasks/cephfs/filesystem.py @@ -270,18 +270,22 @@ class MDSCluster(CephCluster): pool_id_name = {} for pool in pools: pool_id_name[pool['pool']] = pool['pool_name'] + + # mark cluster down for each fs to prevent churn during deletion + status = self.status() + for fs in status.get_filesystems(): + self.mon_manager.raw_cluster_cmd("fs", "set", fs['mdsmap']['fs_name'], "cluster_down", "true") + + # get a new copy as actives may have since changed status = self.status() for fs in status.get_filesystems(): mdsmap = fs['mdsmap'] - name = mdsmap['fs_name'] metadata_pool = pool_id_name[mdsmap['metadata_pool']] - self.mon_manager.raw_cluster_cmd("fs", "set", name, "cluster_down", "true") - for gid in mdsmap['up'].values(): self.mon_manager.raw_cluster_cmd('mds', 'fail', gid.__str__()) - self.mon_manager.raw_cluster_cmd('fs', 'rm', name, '--yes-i-really-mean-it') + self.mon_manager.raw_cluster_cmd('fs', 'rm', mdsmap['fs_name'], '--yes-i-really-mean-it') self.mon_manager.raw_cluster_cmd('osd', 'pool', 'delete', metadata_pool, metadata_pool, '--yes-i-really-really-mean-it')