]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
ceph_manager: reset osd weights to 1 when waiting for clean
authorSage Weil <sage@inktank.com>
Tue, 6 May 2014 00:05:10 +0000 (17:05 -0700)
committerSage Weil <sage@inktank.com>
Tue, 6 May 2014 00:05:10 +0000 (17:05 -0700)
If we leave the weights adjusted, we can get PGs stuck in a remapped state
because we are probabilistically rejecting placement.  Avoid this by
setting on in osds to 1.0 before waiting for clean.

Signed-off-by: Sage Weil <sage@inktank.com>
teuthology/task/ceph_manager.py

index 0ead9d08f98e6f9d06f7b72f6f910b6a8ece9d36..046ed644b5984eaf934d939a92a62f983d6e9606 100644 (file)
@@ -374,6 +374,9 @@ class Thrasher:
             if random.uniform(0, 1) < (float(delay) / cleanint):
                 while len(self.dead_osds) > maxdead:
                     self.revive_osd()
+                for osd in self.in_osds:
+                    self.ceph_manager.raw_cluster_cmd('osd', 'reweight',
+                                                      str(osd), str(1))
                 if random.uniform(0, 1) < float(
                     self.config.get('chance_test_map_discontinuity', 0)):
                     self.test_map_discontinuity()