From e80b6878b7e643a664538e573aba3315ed7461c4 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Tue, 8 Sep 2015 08:59:49 -0400 Subject: [PATCH] tasks/ceph_manager: dump pgs when recover times out It is really hard to map a stuck recovery back to the pgs that are stuck. This will make it easy. Signed-off-by: Sage Weil (cherry picked from commit a328e3e60d0c686333d06b86841d02de27a873be) --- tasks/ceph_manager.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/tasks/ceph_manager.py b/tasks/ceph_manager.py index bb3eaf4473a81..b3d5d53bd1141 100644 --- a/tasks/ceph_manager.py +++ b/tasks/ceph_manager.py @@ -1560,8 +1560,12 @@ class CephManager: start = time.time() else: self.log("no progress seen, keeping timeout for now") - assert time.time() - start < timeout, \ - 'failed to recover before timeout expired' + if time.time() - start >= timeout: + self.log('dumping pgs') + out = self.raw_cluster_cmd('pg', 'dump') + self.log(out) + assert time.time() - start < timeout, \ + 'failed to recover before timeout expired' cur_active_recovered = self.get_num_active_recovered() if cur_active_recovered != num_active_recovered: start = time.time() -- 2.39.5