From: Matan Breizman Date: Thu, 31 Aug 2023 09:55:33 +0000 (+0000) Subject: qa/tasks/ceph_manager: thrash - add reset_purged_snaps_last X-Git-Tag: testing/wip-pdonnell-testing-20240430.123648-reef-debug~304^2 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=926be0624c0adc08b0ea51803741bed485c12f8c;p=ceph-ci.git qa/tasks/ceph_manager: thrash - add reset_purged_snaps_last Signed-off-by: Matan Breizman (cherry picked from commit 680e088b8d48e51dfb3aaa4207de67025a0fdabd) --- diff --git a/qa/tasks/ceph_manager.py b/qa/tasks/ceph_manager.py index 135c40521c9..ac26a96315e 100644 --- a/qa/tasks/ceph_manager.py +++ b/qa/tasks/ceph_manager.py @@ -234,6 +234,7 @@ class OSDThrasher(Thrasher): self.chance_thrash_pg_upmap_items = self.config.get('chance_thrash_pg_upmap', 1.0) self.random_eio = self.config.get('random_eio') self.chance_force_recovery = self.config.get('chance_force_recovery', 0.3) + self.chance_reset_purged_snaps_last = self.config.get('chance_reset_purged_snaps_last', 0.3) num_osds = self.in_osds + self.out_osds self.max_pgs = self.config.get("max_pgs_per_pool_osd", 1200) * len(num_osds) @@ -779,6 +780,19 @@ class OSDThrasher(Thrasher): else: self.cancel_force_recovery() + def reset_purged_snaps_last(self): + """ + Run reset_purged_snaps_last + """ + self.log('reset_purged_snaps_last') + for osd in self.in_osds: + try: + self.ceph_manager.raw_cluster_cmd( + 'tell', "osd.%s" % (str(osd)), + 'reset_purged_snaps_last') + except CommandFailedError: + self.log('Failed to reset_purged_snaps_last, ignoring') + def all_up(self): """ Make sure all osds are up and not out. @@ -1229,6 +1243,8 @@ class OSDThrasher(Thrasher): actions.append((self.thrash_pg_upmap_items, self.chance_thrash_pg_upmap_items,)) if self.chance_force_recovery > 0: actions.append((self.force_cancel_recovery, self.chance_force_recovery)) + if self.chance_reset_purged_snaps_last > 0: + actions.append((self.reset_purged_snaps_last, self.chance_reset_purged_snaps_last)) for key in ['heartbeat_inject_failure', 'filestore_inject_stall']: for scenario in [