Merge PR #66558 into main

* refs/pull/66558/head:
	qa/cephfs: minor fix in comment
	qa/cephfs: give more time to tests in test_clone_stats.py
	qa/cephfs: increase number of files to cloned in test_clone_stats.py
	volumes/stats_util: improve log messages

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Jos Collin <jcollin@redhat.com>
This commit is contained in:
Venky Shankar 2026-07-01 11:14:38 +05:30
commit fc9f8642b2
2 changed files with 21 additions and 20 deletions

View File

@ -332,7 +332,7 @@ class TestCloneProgressReporter(CloneProgressReporterHelper):
c = 'ss1clone1'
self.run_ceph_cmd(f'fs subvolume create {v} {sv} --mode=777')
size = self._do_subvolume_io(sv, None, None, 3, 1024)
size = self._do_subvolume_io(sv, None, None, 30, 100)
self.run_ceph_cmd(f'fs subvolume snapshot create {v} {sv} {ss}')
self.wait_till_rbytes_is_right(v, sv, size)
@ -369,14 +369,14 @@ class TestCloneProgressReporter(CloneProgressReporterHelper):
c = 'ss1clone1'
self.run_ceph_cmd(f'fs subvolume create {v} {sv} --mode=777')
size = self._do_subvolume_io(sv, None, None, 10, 1024)
size = self._do_subvolume_io(sv, None, None, 100, 100)
self.run_ceph_cmd(f'fs subvolume snapshot create {v} {sv} {ss}')
self.wait_till_rbytes_is_right(v, sv, size)
self.run_ceph_cmd(f'fs subvolume snapshot clone {v} {sv} {ss} {c}')
with safe_while(tries=10, sleep=1) as proceed:
with safe_while(tries=10, sleep=2) as proceed:
while proceed():
pev = self.get_pevs_from_ceph_status(c)
@ -417,7 +417,7 @@ class TestCloneProgressReporter(CloneProgressReporterHelper):
self.run_ceph_cmd(f'fs subvolumegroup create {v} {group}')
self.run_ceph_cmd(f'fs subvolume create {v} {sv} {group} --mode=777')
size = self._do_subvolume_io(sv, group, None, 10, 1024)
size = self._do_subvolume_io(sv, group, None, 100, 100)
self.run_ceph_cmd(f'fs subvolume snapshot create {v} {sv} {ss} {group}')
self.wait_till_rbytes_is_right(v, sv, size, group)
@ -425,7 +425,7 @@ class TestCloneProgressReporter(CloneProgressReporterHelper):
self.run_ceph_cmd(f'fs subvolume snapshot clone {v} {sv} {ss} {c} '
f'--group-name {group}')
with safe_while(tries=10, sleep=1) as proceed:
with safe_while(tries=10, sleep=2) as proceed:
while proceed():
pev = self.get_pevs_from_ceph_status(c)
@ -469,7 +469,7 @@ class TestCloneProgressReporter(CloneProgressReporterHelper):
self.config_set('mds', 'mds_snap_rstat', 'true')
self.run_ceph_cmd(f'fs subvolume create {v} {sv} --mode=777')
size = self._do_subvolume_io(sv, None, None, 10, 1024)
size = self._do_subvolume_io(sv, None, None, 100, 100)
self.run_ceph_cmd(f'fs subvolume snapshot create {v} {sv} {ss}')
self.wait_till_rbytes_is_right(v, sv, size)
@ -513,7 +513,7 @@ class TestCloneProgressReporter(CloneProgressReporterHelper):
c = self._gen_subvol_clone_name(4)
self.run_ceph_cmd(f'fs subvolume create {v} {sv} --mode=777')
size = self._do_subvolume_io(sv, None, None, 10, 1024)
size = self._do_subvolume_io(sv, None, None, 100, 100)
self.run_ceph_cmd(f'fs subvolume snapshot create {v} {sv} {ss}')
self.wait_till_rbytes_is_right(v, sv, size)
@ -521,7 +521,7 @@ class TestCloneProgressReporter(CloneProgressReporterHelper):
for i in c:
self.run_ceph_cmd(f'fs subvolume snapshot clone {v} {sv} {ss} {i}')
with safe_while(tries=10, sleep=1) as proceed:
with safe_while(tries=10, sleep=2) as proceed:
while proceed():
pev = self.get_pevs_from_ceph_status(c)
@ -563,7 +563,7 @@ class TestCloneProgressReporter(CloneProgressReporterHelper):
self.config_set('mgr', 'mgr/volumes/snapshot_clone_no_wait', 'false')
self.run_ceph_cmd(f'fs subvolume create {v} {sv} --mode=777')
size = self._do_subvolume_io(sv, None, None, 3, 1024)
size = self._do_subvolume_io(sv, None, None, 30, 100)
self.run_ceph_cmd(f'fs subvolume snapshot create {v} {sv} {ss}')
self.wait_till_rbytes_is_right(v, sv, size)
@ -573,7 +573,7 @@ class TestCloneProgressReporter(CloneProgressReporterHelper):
msg = ('messages for progress bars for snapshot cloning are not how '
'they were expected')
with safe_while(tries=20, sleep=1, action=msg) as proceed:
with safe_while(tries=20, sleep=2, action=msg) as proceed:
while proceed():
pevs = self.get_pevs_from_ceph_status(c)
@ -614,7 +614,7 @@ class TestCloneProgressReporter(CloneProgressReporterHelper):
self.config_set('mgr', 'mgr/volumes/snapshot_clone_no_wait', 'false')
self.run_ceph_cmd(f'fs subvolume create {v} {sv} --mode=777')
size = self._do_subvolume_io(sv, None, None, 3, 1024)
size = self._do_subvolume_io(sv, None, None, 30, 100)
self.run_ceph_cmd(f'fs subvolume snapshot create {v} {sv} {ss}')
self.wait_till_rbytes_is_right(v, sv, size)
@ -673,7 +673,7 @@ class TestCloneProgressReporter(CloneProgressReporterHelper):
sv_path = self.get_ceph_cmd_stdout(f'fs subvolume getpath {v} {sv}')
sv_path = sv_path[1:]
size = self._do_subvolume_io(sv, None, None, 3, 1024)
size = self._do_subvolume_io(sv, None, None, 30, 100)
self.run_ceph_cmd(f'fs subvolume snapshot create {v} {sv} {ss}')
self.wait_till_rbytes_is_right(v, sv, size)
@ -716,7 +716,7 @@ class TestCloneProgressReporter(CloneProgressReporterHelper):
sv_path = self.get_ceph_cmd_stdout(f'fs subvolume getpath {v} {sv}')
sv_path = sv_path[1:]
size = self._do_subvolume_io(sv, None, None, 3, 1024)
size = self._do_subvolume_io(sv, None, None, 30, 100)
self.run_ceph_cmd(f'fs subvolume snapshot create {v} {sv} {ss}')
self.wait_till_rbytes_is_right(v, sv, size)
@ -763,7 +763,7 @@ class TestCloneProgressReporter(CloneProgressReporterHelper):
sv_path = self.get_ceph_cmd_stdout(f'fs subvolume getpath {v} {sv}')
sv_path = sv_path[1:]
size = self._do_subvolume_io(sv, None, None, 3, 1024)
size = self._do_subvolume_io(sv, None, None, 30, 100)
self.run_ceph_cmd(f'fs subvolume snapshot create {v} {sv} {ss}')
self.wait_till_rbytes_is_right(v, sv, size)
@ -797,7 +797,7 @@ class TestOngoingClonesCounter(CloneProgressReporterHelper):
'''
Class CloneProgressReporter contains the code that lets it figure out the
number of ongoing clones on its own, without referring the MGR config
option mgr/volumes/max_concurrenr_clones. This class contains tests to
option mgr/volumes/max_concurrent_clones. This class contains tests to
ensure that this code, that does the figuring out, is working fine.
'''
@ -814,7 +814,7 @@ class TestOngoingClonesCounter(CloneProgressReporterHelper):
sv_path = self.get_ceph_cmd_stdout(f'fs subvolume getpath {v} {sv}')
sv_path = sv_path[1:]
size = self._do_subvolume_io(sv, None, None, 3, 1024)
size = self._do_subvolume_io(sv, None, None, 30, 100)
self.run_ceph_cmd(f'fs subvolume snapshot create {v} {sv} {ss}')
self.wait_till_rbytes_is_right(v, sv, size)

View File

@ -47,6 +47,7 @@ def get_amount_copied(src_path, dst_path, fs_handle):
try:
size_t = int(fs_handle.getxattr(src_path, rbytes))
log.debug(f'rbytes on path src_path ({src_path}) = {size_t}')
except ObjectNotFound:
log.info(f'get_amount_copied(): source path "{src_path}" went missing, '
'couldn\'t run getxattr on it')
@ -54,6 +55,7 @@ def get_amount_copied(src_path, dst_path, fs_handle):
try:
size_c = int(fs_handle.getxattr(dst_path, rbytes))
log.debug(f'rbytes on path dst_path ({dst_path}) = {size_c}')
except ObjectNotFound:
log.info(f'get_amount_copied(): destination path "{dst_path}" went '
'missing, couldn\'t run getxattr on it')
@ -210,8 +212,8 @@ class CloneProgressReporter:
# get clone in order in which they were launched, this
# should be same as the ctime on clone entry.
clone_index_entries = clone_index.list_entries_by_ctime_order()
log.debug('finished collecting all clone index entries, '
f'found {len(clones)} clone index entries')
log.debug(f'found {len(clone_index_entries)} clone index '
'entries')
# reset ongoing clone counter before iterating over all clone
# entries
@ -248,8 +250,7 @@ class CloneProgressReporter:
clones.append(ci)
log.debug('finished collecting info on all clones, found '
f'{len(clones)} clones out of which '
log.debug(f'found {len(clones)} clones, out of which '
f'{self.ongoing_clones_count} are ongoing clones')
return clones