From 19c724c1d6868dccab5b48050a0e896ebaf73493 Mon Sep 17 00:00:00 2001 From: Patrick Donnelly Date: Thu, 25 Jul 2019 14:42:12 -0700 Subject: [PATCH] qa: wait for MDS to come back after removing it Fixes: http://tracker.ceph.com/issues/40967 Signed-off-by: Patrick Donnelly --- qa/tasks/cephfs/test_failover.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/qa/tasks/cephfs/test_failover.py b/qa/tasks/cephfs/test_failover.py index 527386006fb..786980ba087 100644 --- a/qa/tasks/cephfs/test_failover.py +++ b/qa/tasks/cephfs/test_failover.py @@ -364,7 +364,7 @@ class TestStandbyReplay(CephFSTestCase): self.assertEqual(0, len(list(self.fs.get_replays(status=status)))) return status - def _confirm_single_replay(self, full=True, status=None): + def _confirm_single_replay(self, full=True, status=None, retries=3): status = self.fs.wait_for_daemons(status=status) ranks = sorted(self.fs.get_mds_map(status=status)['in']) replays = list(self.fs.get_replays(status=status)) @@ -377,7 +377,11 @@ class TestStandbyReplay(CephFSTestCase): has_replay = True checked_replays.add(replay['gid']) if full and not has_replay: - raise RuntimeError("rank "+str(rank)+" has no standby-replay follower") + if retries <= 0: + raise RuntimeError("rank "+str(rank)+" has no standby-replay follower") + else: + retries = retries-1 + time.sleep(2) self.assertEqual(checked_replays, set(info['gid'] for info in replays)) return status -- 2.39.5