* use list comprehension instead of concatenating two ranges for
better readablity -- we want to skip current max_mds for changing
it. this helps reader to understand the goal of thrashing
* random.sample() is replaced with random.choice(). the latter is a
better alternative, if the number of samples is 1.
Signed-off-by: Kefu Chai <kchai@redhat.com>
if random.random() <= self.thrash_max_mds:
max_mds = status.get_fsmap(self.fs.id)['mdsmap']['max_mds']
- options = list(range(1, max_mds))+list(range(max_mds+1, self.max_mds+1))
+ options = [i for i in range(1, self.max_mds + 1) if i != max_mds]
if len(options) > 0:
- sample = random.sample(options, 1)
- new_max_mds = sample[0]
+ new_max_mds = random.choice(options)
self.log('thrashing max_mds: %d -> %d' % (max_mds, new_max_mds))
self.fs.set_max_mds(new_max_mds)
stats['max_mds'] += 1