This stopped working in Python 3.12:
Changed in version 3.12: Automatic conversion of non-integer types
is no longer supported. Calls such as randrange(10.0) and
randrange(Fraction(10, 1)) now raise a TypeError.
Fixes: https://tracker.ceph.com/issues/74676
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
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))
# 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)