]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
qa: fix TypeError in delay 67620/head
authorJos Collin <jcollin@redhat.com>
Tue, 24 Feb 2026 02:03:13 +0000 (07:33 +0530)
committerJos Collin <jcollin@redhat.com>
Tue, 3 Mar 2026 10:02:40 +0000 (15:32 +0530)
random.randrange() asserts TypeError for arguments of type 'float'.
So use random.uniform() to fix this.

Fixes: https://tracker.ceph.com/issues/75090
Signed-off-by: Jos Collin <jcollin@redhat.com>
(cherry picked from commit 027400df81aa3bff0def422acfa43eff5f6e08c0)

qa/tasks/cephfs_mirror_thrash.py
qa/tasks/mds_thrash.py

index 91f60ac50137c956f38f66dcb8e6550b17da5177..3d27616d963160f2a44707d77dec18d95bb991a9 100644 (file)
@@ -109,7 +109,7 @@ class CephFSMirrorThrasher(Thrasher, Greenlet):
         while not self.stopping.is_set():
             delay = self.max_thrash_delay
             if self.randomize:
-                delay = random.randrange(self.min_thrash_delay, self.max_thrash_delay)
+                delay = random.uniform(self.min_thrash_delay, self.max_thrash_delay)
 
             if delay > 0.0:
                 self.log('waiting for {delay} secs before thrashing'.format(delay=delay))
@@ -146,7 +146,7 @@ class CephFSMirrorThrasher(Thrasher, Greenlet):
                 # wait for a while before restarting
                 delay = self.max_revive_delay
                 if self.randomize:
-                    delay = random.randrange(0.0, self.max_revive_delay)
+                    delay = random.uniform(0.0, self.max_revive_delay)
 
                 self.log('waiting for {delay} secs before reviving daemons'.format(delay=delay))
                 sleep(delay)
index 7b7b420f9ea5878397222ae78fdde2b1d5eb5f04..7668b49bef34a66dc83565e21910ce3650bb7ccc 100644 (file)
@@ -236,7 +236,7 @@ class MDSThrasher(Thrasher, Greenlet):
         while not self.stopping.is_set():
             delay = self.max_thrash_delay
             if self.randomize:
-                delay = random.randrange(0.0, self.max_thrash_delay)
+                delay = random.uniform(0.0, self.max_thrash_delay)
 
             if delay > 0.0:
                 self.log('waiting for {delay} secs before thrashing'.format(delay=delay))
@@ -315,7 +315,7 @@ class MDSThrasher(Thrasher, Greenlet):
                 # standby
                 delay = self.max_revive_delay
                 if self.randomize:
-                    delay = random.randrange(0.0, self.max_revive_delay)
+                    delay = random.uniform(0.0, self.max_revive_delay)
 
                 self.log('waiting for {delay} secs before reviving {label}'.format(
                     delay=delay, label=label))
@@ -342,17 +342,17 @@ class MDSThrasher(Thrasher, Greenlet):
              # don't do replay thrashing right now
 #            for info in status.get_replays(self.fs.id):
 #                # this might race with replay -> active transition...
-#                if status['state'] == 'up:replay' and random.randrange(0.0, 1.0) < self.thrash_in_replay:
+#                if status['state'] == 'up:replay' and random.uniform(0.0, 1.0) < self.thrash_in_replay:
 #                    delay = self.max_replay_thrash_delay
 #                    if self.randomize:
-#                        delay = random.randrange(0.0, self.max_replay_thrash_delay)
+#                        delay = random.uniform(0.0, self.max_replay_thrash_delay)
 #                sleep(delay)
 #                self.log('kill replaying mds.{id}'.format(id=self.to_kill))
 #                self.kill_mds(self.to_kill)
 #
 #                delay = self.max_revive_delay
 #                if self.randomize:
-#                    delay = random.randrange(0.0, self.max_revive_delay)
+#                    delay = random.uniform(0.0, self.max_revive_delay)
 #
 #                self.log('waiting for {delay} secs before reviving mds.{id}'.format(
 #                    delay=delay, id=self.to_kill))