From 527f46f70411c5895dfe33a88e44a58fa6ccaf60 Mon Sep 17 00:00:00 2001 From: Patrick Donnelly Date: Tue, 23 Apr 2024 15:49:42 -0400 Subject: [PATCH] qa: add quiesce tests during fragmentation Reproduces: https://tracker.ceph.com/issues/65603 Signed-off-by: Patrick Donnelly --- qa/tasks/cephfs/test_quiesce.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/qa/tasks/cephfs/test_quiesce.py b/qa/tasks/cephfs/test_quiesce.py index 6b18055aff006..c840b883cca86 100644 --- a/qa/tasks/cephfs/test_quiesce.py +++ b/qa/tasks/cephfs/test_quiesce.py @@ -5,6 +5,7 @@ import os import re import secrets import tempfile +import time import unittest from io import StringIO import os.path @@ -591,6 +592,26 @@ class TestQuiesce(QuiesceTestCase): self._wait_for_quiesce_complete(reqid) self._verify_quiesce(root=self.subvolume) + def test_quiesce_dir_fragment(self): + """ + That quiesce completes with fragmentation in the background. + """ + + self.config_set('mds', 'mds_bal_split_size', '10') + self.config_set('mds', 'mds_bal_merge_size', '1') # do not merge + self.config_set('mds', 'mds_bal_split_bits', '1') + self._configure_subvolume() + self._client_background_workload() + + # time for the workload to get busy + time.sleep(5) + + J = self.fs.rank_tell("quiesce", "path", self.subvolume) + log.debug(f"{J}") + reqid = self._reqid_tostr(J['op']['reqid']) + self._wait_for_quiesce_complete(reqid) + self._verify_quiesce(root=self.subvolume) + class TestQuiesceMultiRank(QuiesceTestCase): """ -- 2.39.5