Commit Graph

3764 Commits

Author SHA1 Message Date
Xiubo Li
7ebd06441a qa: wait for 100 seconds to make sure the quota to be enforced
The worst case in kclient the dirty caps will be held for 60 seconds,
and also the MDS may defer updating the directory rstat for 5 seconds,
which is per tick, maybe longer if needs to wait for mdlog to flush.

Fixes: https://tracker.ceph.com/issues/59349
Signed-off-by: Xiubo Li <xiubli@redhat.com>
2023-04-18 22:30:09 +08:00
Xiubo Li
ac1de56fcd qa: create a new directory to fill the volume space
When trying to filling the volume space by continuing filling multiple
files, and when flushing the dirty caps back to MDS the MDS will try
to skip updating the parent rstat in 'mds_dirstat_min_interval' to
avoid propagating more often than this. That means the quota changes
couldn't be broadcasted to the clients in time.

So after waiting for 20 seconds, and if we try to write the existing
files only the first file could successfully update the parent quota
realm in MDS, but this won't increase the total size.

Fixes: https://tracker.ceph.com/issues/59349
Signed-off-by: Xiubo Li <xiubli@redhat.com>
2023-04-18 22:30:09 +08:00
Nizamudeen A
abff7f0bb7
Merge pull request #49531 from rhcs-dashboard/fix-rbd-snapshot-creation
mgr/dashboard: Fix rbd snapshot creation

Reviewed-by: VasishtaShastry <NOT@FOUND>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
Reviewed-by: sunilangadi2 <NOT@FOUND>
2023-04-14 12:06:05 +05:30
Ilya Dryomov
c529fdd63a qa/suites/rbd: install qemu-utils in addition to qemu-block-extra on Ubuntu
qemu-utils is usually pre-installed but, due to what appears to be
a Ubuntu packaging bug, it's not upgraded when qemu-block-extra is
installed:

  The following NEW packages will be installed:
    qemu-block-extra
  The following packages will be upgraded:
    qemu-system-common qemu-system-data qemu-system-gui qemu-system-x86

However, the version of the block driver must match exactly the version
of the qemu-img tool, so the above leads to:

  $ qemu-img convert -f qcow2 -O raw /home/ubuntu/cephtest/qemu/base.client.0.0.qcow2 rbd:rbd/client.0.0
  Failed to initialize module: /usr/lib/x86_64-linux-gnu/qemu/block-rbd.so
  Note: only modules from the same build can be loaded.
  qemu: module block-block-rbd not found, do you want to install qemu-block-extra package?
  qemu-img: Unknown protocol 'rbd'

Fixes: https://tracker.ceph.com/issues/59431
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2023-04-12 15:37:44 +02:00
Aashish Sharma
5ea4171ae3 mgr/dashboard: fix rbd mirror snapshot creation
There are two types of snapshots that can be created on a snapshot based mirroring image - Normal Snapshot(same as journal based snapshot) and Nirror Image Snapshot. Till now Dashboard allowed only Mirror image snapshot, this PR intends to enable both the types

Signed-off-by: Aashish Sharma <aasharma@redhat.com>
2023-04-12 11:50:40 +05:30
yaarith
e0a6d6aa70
Merge pull request #50699 from yaarith/telemetry-leaderboard-doc
mgr/telemetry: add leaderboard description and documentation

Reviewed-by: Zac Dover <zac.dover@proton.me>
Reviewed-by: Laura Flores <lflores@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2023-04-10 13:55:36 -04:00
Venky Shankar
bdf4d4677f Merge PR #50844 into main
* refs/pull/50844/head:
	qa: wait for MDSMonitor tick to replace daemons

Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
2023-04-06 23:11:38 +05:30
Yuri Weinstein
23a958d647
Merge pull request #47893 from kotreshhr/ceph-mgr-finisher-block
mgr: Add one finisher thread per module

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
Reviewed-by: Xiubo Li <xiubli@redhat.com>
2023-04-06 09:23:24 -07:00
Patrick Donnelly
69565dbbf1
qa: load file system info if not created
Mounts may create a Filesystem object which does not create the file
system. This causes self.id to be Null when we try to wait for daemons
to be up. Load it just in time!

Fixes: https://tracker.ceph.com/issues/59332
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-04-05 18:24:22 -04:00
Rishabh Dave
a2b3bafcfb
Merge pull request #50664 from rishabh-d-dave/fs-qa-caps-helper-mds
qa/cephfs: upgrade gen_mds_cap_str() in caps_helper 

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2023-04-05 19:47:36 +05:30
Rishabh Dave
53ac817bde
Merge pull request #50665 from rishabh-d-dave/fs-qa-test-multifs-auth-simplify
qa/cephfs: simplify some code in test_multifs_auth.py 

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2023-04-05 19:47:06 +05:30
Rishabh Dave
265abc79b3 qa/cephfs: simplify some code in test_multifs_auth.py
test_mutlifs_auth.TestMDSCaps._create_client() not only creates a client
but also generate caps strings for the client as per the parameter this
method receives and and then writes the keyring to all remote machines.
This creates confusion when reading code on test methods in TestMDSCaps.
Let's re-arrange this code such that this confusion is avoided.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-04-05 16:07:46 +05:30
Adam King
735bed9d7f
Merge pull request #50237 from rkachach/fix_issue_rgw_multisite_automated_testing
qa: Adding rgw multisite support testing

Reviewed-by: Adam King <adking@redhat.com>
2023-04-04 14:29:41 -04:00
Patrick Donnelly
1814570b8f
qa: wait for MDSMonitor tick to replace daemons
Fixes: https://tracker.ceph.com/issues/59297
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-04-03 12:10:56 -04:00
Rishabh Dave
989f7ecee5
Merge pull request #46905 from lxbsz/wip-quota
mds: align quota.max_bytes to 4MB or 4KB

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Milind Changire <mchangir@redhat.com>
Reviewed-by: Kotresh HR <khiremat@redhat.com>
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
Reviewed-by: Rishabh Dave <ridave@redhat.com>
2023-04-01 00:12:19 +05:30
Venky Shankar
365895fb2d Merge PR #49460 into main
* refs/pull/49460/head:
	qa: fix issue with fn unable to fetch port and ip
	qa: fix helper function _check_nfs_cluster_status()
	qa: fix testcase 'test_cluster_set_user_config_with_non_existing_clusterid'
	qa: fix cluster creation failure in test_nfs.py
	qa: test export creation at filepath and symlink
	qa: added test case test_nfs_export_with_invalid_path
	mgr/nfs: disallow non-existent paths when creating export
	mgr/nfs/tests: mock check_cephfs_path
	mgr/nfs/utils: add helper func to check cephfs path

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Rishabh Dave <ridave@redhat.com>
2023-03-31 09:32:37 +05:30
Yaarit Hatuka
e73d94820b qa/tasks/mgr/dashboard: add leaderboard_description to api tests
leaderboard_description is a new telemetry module option.

Signed-off-by: Yaarit Hatuka <yaarit@redhat.com>
2023-03-30 15:05:44 +00:00
dparmar18
310286fa18 qa: fix issue with fn unable to fetch port and ip
_get_port_ip_info() fails to fetch port and ip due to empty 'backend' key:

2023-02-24T20:49:09.084 DEBUG:teuthology.orchestra.run.smithi042:> sudo adjust-ulimits ceph-coverage /home/ubuntu/cephtest/archive/coverage timeout 120 ceph --cluster ceph nfs cluster info test
2023-02-24T20:49:09.471 INFO:teuthology.orchestra.run.smithi042.stdout:{
2023-02-24T20:49:09.472 INFO:teuthology.orchestra.run.smithi042.stdout:  "test": {
2023-02-24T20:49:09.472 INFO:teuthology.orchestra.run.smithi042.stdout:    "backend": [],
2023-02-24T20:49:09.472 INFO:teuthology.orchestra.run.smithi042.stdout:    "virtual_ip": null
2023-02-24T20:49:09.472 INFO:teuthology.orchestra.run.smithi042.stdout:  }
2023-02-24T20:49:09.472 INFO:teuthology.orchestra.run.smithi042.stdout:}

it then raises:

2023-02-24T20:49:10.323 INFO:tasks.cephfs_test_runner:    info_output = json.loads(self._nfs_cmd('cluster', 'info', self.cluster_id))['test']['backend'][0]
2023-02-24T20:49:10.323 INFO:tasks.cephfs_test_runner:IndexError: list index out of range

Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
2023-03-30 19:29:15 +05:30
dparmar18
503f8679ed qa: fix helper function _check_nfs_cluster_status()
Comment in the code says to wait for two minutes as cluster
creation takes time but actually it's waiting for thirteen
minutes, it's not required to wait this long, i think a minute
here is more than enough, also switched to using safe_while().

Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
2023-03-30 19:29:15 +05:30
dparmar18
3b3fa71edf qa: fix testcase 'test_cluster_set_user_config_with_non_existing_clusterid'
Fixes: https://tracker.ceph.com/issues/58758
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
2023-03-30 19:29:15 +05:30
dparmar18
7cb3e58ecb qa: fix cluster creation failure in test_nfs.py
Also adds a function _nfs_complete_cmd() that returns process obj so that stdout/stderr
can be used for evaluation(_nfs_cmd() uses raw_cluster_cmd() that returns just stdout
and it became difficult to time cluster creation errors in _test_create_cluster()).

It takes sometime to update the cluster data, therefore running the command set
(check nfs server status -> nfs cluster create test -> check cluster status) in
a loop (max six iteration with sleep of 5 secs at each iteration) fixes the issue.

Fixes: https://tracker.ceph.com/issues/58744
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
2023-03-30 19:29:15 +05:30
dparmar18
afaf251d21 qa: test export creation at filepath and symlink
Fixes: https://tracker.ceph.com/issues/58228
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
2023-03-30 19:29:15 +05:30
dparmar18
b0bb25024d qa: added test case test_nfs_export_with_invalid_path
Fixes: https://tracker.ceph.com/issues/58228
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
2023-03-30 19:29:15 +05:30
Casey Bodley
c0186fe5eb
Merge pull request #45693 from cbodley/wip-qa-rgw-scrub
qa/rgw: reenable wait-for-scrub

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2023-03-30 08:50:30 -04:00
Venky Shankar
aa9a83029a Merge PR #47649 into main
* refs/pull/47649/head:
	mds: adjust MDSRank::command_tag_path invocation of enqueue_scrub()
	doc/scrub: documented stray evaluation using recursive scrub
	qa: added testcases
	mds: make `scrub status` print flag `scrub_mdsdir`
	mds: add scrub_mdsdir to ScrubHeader
	mds: do not dump multiple JSON obj
	mds: evaluate strays while performing scrub on root path
	mds: remove inode from scrub_stack if being purged
	mds: do not scrub inode if it is purging

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2023-03-30 16:13:48 +05:30
Patrick Donnelly
1b4d9077af
qa: add missing scan_links step for data scan recovery
Without, the first field remains corrupt (HEAD).

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-03-29 13:02:56 -04:00
Patrick Donnelly
293b90fe63
qa/tasks/cephfs: test damage to dentry's first is caught
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-03-29 13:02:56 -04:00
Patrick Donnelly
3ba17390e9
qa/tasks/cephfs: use rank_asok and allow specifying rank
This will use the more efficient:

    ceph tell mds.<fsname>:<rank> ...

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-03-29 13:02:56 -04:00
Patrick Donnelly
dbf1a402c9
qa/tasks: allow specifying timeout command prefix to ceph
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-03-29 13:02:55 -04:00
Rishabh Dave
87025d1585 qa/cephfs: use kwargs to unpack tuples in caps_helper.py
Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-03-29 21:00:08 +05:30
Rishabh Dave
0934845a38 qa/cephfs: upgrade gen_mds_cap_str() in caps_helper
Modify get_mds_cap_str() to accept a tuple with a single member. In this
case, the only member is assumed to be a permission, FS name is assigned
None type and cephfs_mntpt is assigned '/'.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-03-29 18:09:29 +05:30
Kotresh HR
2c2ef6d56b qa: Add test for per-module finisher thread
Fixes: https://tracker.ceph.com/issues/51177
Signed-off-by: Kotresh HR <khiremat@redhat.com>
2023-03-29 11:34:07 +05:30
Xiubo Li
ede1afe91c qa: remove the FuseMount/KernelMount check in test_newops.py
Will use the postmerge fragment to check this.

Fixes: https://tracker.ceph.com/issues/57591
Signed-off-by: Xiubo Li <xiubli@redhat.com>
2023-03-29 09:07:58 +08:00
Xiubo Li
585481f343 qa: fscrypt enable xfstests-dev generic/020 test case
Since the https://git.ceph.com/xfstests-dev.git has pulled the
corresponding fix about the long attribute for generic/020 test case,
we can enable it now.

Signed-off-by: Xiubo Li <xiubli@redhat.com>
2023-03-27 14:25:52 +08:00
Rishabh Dave
969a93d0dc qa/cephfs: add more helper methods to caps_helper.py
Add methods that will accept read/write permissions, CephFS names and
CephFS mount point and in return will generate string form of MON, OSD
and MDS caps exactly as it is reported in Ceph keyrings.

Replace similar code in test_multifs_auth.py with calls to these helper
methods.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-03-24 11:32:58 +05:30
Casey Bodley
1dc562404c qa/rgw: run 'gc process' when rgw task unwinds
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2023-03-23 09:53:12 -04:00
Rishabh Dave
3203d6005e
Merge pull request #50498 from rishabh-d-dave/fs-qa-caps-helper-minor
qa/cephfs: minor corrections in caps_helper.py

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
2023-03-17 23:53:27 +05:30
Ali Maredia
02172304dd
Merge pull request #50339 from cbodley/wip-qa-rgw-reef-upgrade
qa/rgw: add rgw/upgrade suite

Reviewed-by: Ali Maredia <amaredia@redhat.com>
2023-03-14 13:59:34 -04:00
Rishabh Dave
e3c6e15165
Merge pull request #45960 from rishabh-d-dave/xfstests-dev-run-more-tests
qa/cephfs: upgrade xfstests_dev.py to run more tests

Reviewed-by: Xiubo Li <xiubli@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
2023-03-14 20:13:02 +05:30
Venky Shankar
44f82d2327 Merge PR #50049 into main
* refs/pull/50049/head:
	qa: add cephfs_mirror test case to check root dir modes
	cephfs_mirror: sync snap dir root mode with remote dir

Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
2023-03-13 19:22:04 +05:30
Rishabh Dave
1428fb1e73 qa/cephfs: minor corrections in caps_helper.py
Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-03-13 17:45:57 +05:30
Rishabh Dave
c4ce7221a0 qa/cephfs: run all generic tests from xfstests-dev
Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-03-13 11:49:48 +05:30
Rishabh Dave
f43e1091c0 qa/cephfs: add helper methods to run tests from xfstests-dev
Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-03-10 17:52:44 +05:30
Venky Shankar
f2709dd181 Merge PR #49102 into main
* refs/pull/49102/head:
	qa: add test for schedule auto deactivation
	doc/cephfs: add note about path usage in snap-schedule
	mgr/snap_schedule: add debug log for missing or wrong path

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Rishabh Dave <ridave@redhat.com>
2023-03-10 16:45:35 +05:30
Xiubo Li
fdf0e24e40 qa: use 4KB aligned quota bytes
Fixes: https://tracker.ceph.com/issues/56397
Signed-off-by: Xiubo Li <xiubli@redhat.com>
2023-03-08 18:57:05 +08:00
Venky Shankar
2e2e7b9186 Merge PR #49008 into main
* refs/pull/49008/head:
	doc/quota: accept human readable quota value documented
	qa/workunits/fs/quota.sh: use human readable format for ceph.quota.max_bytes
	qa: added three testcases
	mds: accept human readable values for quotas

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Milind Changire <mchangir@redhat.com>
Reviewed-by: Kotresh Hiremath Ravishankar <khiremat@redhat.com>
Reviewed-by: Rishabh Dave <ridave@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Anthony D Atri <anthony.datri@gmail.com>
2023-03-08 12:36:21 +05:30
Venky Shankar
9623dd2539 Merge PR #46357 into main
* refs/pull/46357/head:
	PendingReleaseNotes: add reference to the new mdsmap max_xattr_size field
	qa/tasks/mgr/dashboard/test_health: Add 'max_xattr_size' to the mdsmap schema
	mds: prevent exceeding xattrs limits on initial set
	mds: prevent clients from exceeding the xattrs key/value limits
	mon: add new configuration to limit filesystem xattrs size

Reviewed-by: Xiubo Li <xiubli@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
2023-03-08 08:12:02 +05:30
Venky Shankar
d78b2305c3 Merge PR #49844 into main
* refs/pull/49844/head:
	qa: enforce string client-id check for testing oldest client tid warning
	qa: optionally check pattern string match in `health detail`

Reviewed-by: Rishabh Dave <ridave@redhat.com>
Reviewed-by: Kotresh Hiremath Ravishankar <khiremat@redhat.com>
2023-03-08 08:08:17 +05:30
Venky Shankar
8f55abb330 Merge PR #49912 into main
* refs/pull/49912/head:
	qa: avoid explicit set to client mountpoint as "/"

Reviewed-by: Xiubo Li <xiubli@redhat.com>
Reviewed-by: Rishabh Dave <ridave@redhat.com>
2023-03-08 08:07:04 +05:30
Yuval Lifshitz
4aa930e9f9
Merge pull request #48911 from yuvalif/test-kafka-sasl-scram
rgw: test kafka sasl scram

reviewed-by: anthonyeleven, cbodley
2023-03-07 20:20:28 +02:00