Commit Graph

10105 Commits

Author SHA1 Message Date
Yuri Weinstein
bace1df330
Merge pull request #51438 from NitzanMordhai/wip-nitzan-cbt-perf-ci
cbt perf ci

Reviewed-by: Samuel Just <sjust@redhat.com>
2023-07-19 12:06:32 -04:00
Yuri Weinstein
38b9568458
Merge pull request #50441 from cbodley/wip-qa-distros-centos9
qa/distros: add centos stream 9 as supported distro

Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
Reviewed-by: Yuri Weinstein <yweinste@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2023-07-19 11:33:28 -04:00
Venky Shankar
4e5d800406 Merge PR #51539 into main
* refs/pull/51539/head:
	doc: users now need to provide scrub_mdsdir and recursive flags
	qa: add recursive flag to test_flag_scrub_mdsdir
	mds: remove code to bypass dumping empty header scrub info
	mds: dump_values no more needed
	mds: enqueue ~mdsdir at the time of enqueing root

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2023-07-18 20:15:24 +05:30
Casey Bodley
21ad52551d
Merge pull request #51700 from cfsnyder/wip-cfsnyder-put-404
rgw: fix consistency bug with OLH objects

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2023-07-18 09:28:48 -04:00
Yuri Weinstein
deae3a6f18
Merge pull request #50291 from batrick/i55606
pybind/mgr: reopen database handle on blocklist

Reviewed-by: Ramana Raja <rraja@redhat.com>
2023-07-14 16:28:40 -04:00
Cory Snyder
aa1f40e80d rgw: fix/improve test_rgw_versioning.py tests
Signed-off-by: Cory Snyder <csnyder@1111systems.com>
2023-07-14 12:50:55 +00:00
Adam King
ba53768bfd
Merge pull request #52122 from adk3798/teuth-test-custom-config
qa/cephadm: testing for extra daemon/container features

Reviewed-by: John Mulligan <jmulligan@redhat.com>
2023-07-13 19:47:29 -04:00
Rishabh Dave
f0588bd3b3
Merge pull request #50569 from rishabh-d-dave/CephManager-in-CephFSTestCase
qa/cephfs: add helper methods in CephFSTestCase

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2023-07-13 12:44:22 +05:30
Venky Shankar
a9391e5b29 Merge PR #51959 into main
* refs/pull/51959/head:
	qa: test for session ls with filters
	mds: session ls command appears twice in command listing

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
2023-07-13 11:18:34 +05:30
Venky Shankar
94f3e167a0 Merge PR #51278 into main
* refs/pull/51278/head:
	mgr/snap_schedule: rephrase log message when pruning
	doc: add note about snap-schedule snapshot retention
	qa: test user defined number of snaps retention spec
	mgr/snap_schedule: adapt test to new argument list
	doc/cephfs: Add note how mds_max_snaps_per_dir affects snapshot retention
	mgr/snap_schedule: Use mds_max_snaps_per_dir as snapshot count limit

Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
2023-07-13 11:17:16 +05:30
Yuri Weinstein
95627c9673
Merge pull request #51909 from NitzanMordhai/wip-nitzan-divergent-priors-test-3-pick-osd
qa/standalone/osd/divergent-prior.sh: Divergent test 3 with pg_autoscale_mode on pick divergent osd

Reviewed-by: Kamoltat (Junior) Sirivadhna <ksirivad@redhat.com>
2023-07-12 14:36:45 -04:00
Nizamudeen A
add6bf99b0
Merge pull request #52342 from ljflores/wip-whitelist-api
qa/tasks: set defer_client_eviction_on_laggy_osds=false in api tests

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2023-07-12 10:21:45 +05:30
Laura Flores
fe6ae275f0
Merge pull request #52345 from ljflores/wip-tracker-59057
qa/suites/rados/singleton/all: remove test_envlibrados_for_rocksdb
2023-07-11 17:04:32 -05:00
Laura Flores
2322d2c8e0 qa/tasks: set defer_client_eviction_on_laggy_osds=false in api tests
We expect laggy OSDs in this testing environment,
so it makes sense to disable this warning.

Fixes: https://tracker.ceph.com/issues/61907
Signed-off-by: Laura Flores <lflores@redhat.com>
2023-07-11 15:33:12 -05:00
Adam King
031bbbc17f qa/cephadm: test for extra daemon features
Specifically, extra_container_args, extra_entrypoint_args,
and custom_configs.

This also provides testing for the CustomContainer
class which previously had no usage in any
of the teuthology tests

Signed-off-by: Adam King <adking@redhat.com>
2023-07-11 09:37:28 -04:00
Nitzan Mordechai
e174c6e2cf tasks: Adding cbt performance collect
The change will add another process after cbt complete and results
are available in json format to collect the results into DB
that will later on display in grafana dashboard

Signed-off-by: Nitzan Mordechai <nmordech@redhat.com>
2023-07-09 08:30:08 +00:00
Nitzan Mordechai
4a73f963c5 test: Add Rado/perf suites with cbt stat collection
To be able to collect cpu per operation, adding stat collection

Signed-off-by: Nitzan Mordechai <nmordech@redhat.com>
2023-07-09 08:25:37 +00:00
Yuri Weinstein
6e02660f10
Merge pull request #51275 from mchangir/mon-block-osd-pool-mksnap-for-fs-pools
mon: block osd pool mksnap for fs pools


Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2023-07-07 17:09:07 -04:00
Adam King
b985fadc48
Merge pull request #52301 from adk3798/cephadm-fix-rgw-migration
mgr/cephadm: fix rgw spec migration with simple specs

Reviewed-by: John Mulligan <jmulligan@redhat.com>
Reviewed-by: Redouane Kachach <rkachach@redhat.com>
2023-07-07 14:33:11 -04:00
Laura Flores
2fca433c71 qa/suites/rados/singleton/all: remove test_envlibrados_for_rocksdb
In rocksdb 7.0, all envlibrados files were moved to a separate repository (ref: https://github.com/facebook/rocksdb/pull/9206).
The new repo is temporary and serves as an example before it is finalized where and who to host RADOS support.

Since this new repo is outside of the rocksdb repo and in an unceratin state, we should remove support for it in main
and Reef test suites. Quincy and below still use rocksdb 6.0, so the same does not apply.

Fixes: https://tracker.ceph.com/issues/59057
Signed-off-by: Laura Flores <lflores@redhat.com>
2023-07-06 12:14:05 -05:00
Casey Bodley
744c8b0841
Merge pull request #52216 from cbodley/wip-61838
qa/s3tests: filter on 'sts_tests' and 'webidentity_tests'

Reviewed-by: Ali Maredia <amaredia@redhat.com>
2023-07-06 09:59:31 -04:00
Adam King
1860ef8387 mgr/cephadm: fix rgw spec migration with simple specs
The rgw spec migration code, intended to formalize
the rgw_frontend_type spec option, doesn't work with
simple specs i.e.

service_type: rgw
service_id: rgw.1
service_name: rgw.rgw.1
placement:
  label: rgw

because the migration code assumes there will always be
a "spec" section inside the spec. This is the case for
more involved rgw specs such as

service_type: rgw
service_id: foo
placement:
  label: rgw
  count_per_host: 2
spec:
  rgw_realm: myrealm
  rgw_zone: myzone
  rgw_frontend_type: "beast"
  rgw_frontend_port: 5000

which is what the migration is actually concerned about
(verification of the rgw_frontend_type in these specs).

In the case where the spec is more simple, we should
just leave the spec alone and move on. Unfortunately
the current code assumes the field will always be
there and hits an unhandled KeyError when trying to
migrate the more simple specs. This causes the
cephadm module to crash shortly after starting an
upgrade to a version that includes this migration
and it's very difficult to find the root cause. This
can be worked around by adding fields to the rgw
spec before upgrade so the "spec" field exists in
the spec and the migration works as intended.

This commit fixes the migration in the simple
case as well as adding testing for that case to
both the unit tests and orch/cephadm teuthology
upgrade tests

Fixes: https://tracker.ceph.com/issues/61889

Signed-off-by: Adam King <adking@redhat.com>
2023-07-05 11:01:25 -04:00
Matan Breizman
780f6f55cd qa/tasks/cbt.py: Install collectl manually
See: d4a04809fd

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
2023-07-04 11:42:34 +00:00
Matan Breizman
abdbfa2275 qa/suites/crimson-rados: Introduce performance testing
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
2023-07-04 11:42:34 +00:00
Cory Snyder
38133e59d2 rgw: cancel olh modification by removing pending xattrs in set_olh error scenarios
Makes request threads clean up after themselves and remove their pending
xattrs from OLH objects before they return an error from set_olh.

Fixes: https://tracker.ceph.com/issues/59663
Signed-off-by: Cory Snyder <csnyder@1111systems.com>
2023-07-04 09:44:04 +00:00
Cory Snyder
38e027a8c3 qa/workunits/rgw: add test for PUT response during reshard
Tests that a PUT succeeds when the bucket is actively resharding.

Signed-off-by: Cory Snyder <csnyder@1111systems.com>
2023-07-04 09:31:59 +00:00
J. Eric Ivancich
fb9d481188
Merge pull request #50667 from ivancich/wip-add-reupload-testing
qa/rgw: test that multipart re-upload does not leave any orphans

Reviewed-by: Cory Snyder <csnyder@iland.com>
2023-06-30 11:30:27 -04:00
Dhairya Parmar
e40ca408a1 qa: add recursive flag to test_flag_scrub_mdsdir
Code has been changed, in order to scrub ~mdsdir at root,
recursive flag also needs to be provided along with
scrub_mdsdir.

Fixes: https://tracker.ceph.com/issues/59350
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
2023-06-28 18:12:27 +05:30
Rishabh Dave
0a781ef080 qa/cephfs: use run_ceph_cmd() when cmd output is not needed
In filesystem.py and wherever instance of class Filesystem are used, use
run_ceph_cmd() instead of get_ceph_cluster_stdout() when output of Ceph
command is not required.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-06-28 17:38:19 +05:30
Rishabh Dave
1bf87e6eec qa/cephfs: add helper methods to filesystem.py
Add run_ceph_cmd(), get_ceph_cmd_stdout() and get_ceph_cmd_result() to
class Filesystem so that running Ceph command is easier. This affects
not only methods inside class Filesystem but also methods elsewhere that
uses instance of class Filesystem to run Ceph commands.

Instead of "self.fs.mon_manager.raw_cluster_cmd()" writing
"self.fs.run_ceph_cmd()" will suffice.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-06-28 17:38:19 +05:30
Rishabh Dave
c7c38ba558 qa/cephfs: when cmd output is not needed call run_ceph_cmd()
instead of get_ceph_cmd_stdout().

Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-06-28 17:38:19 +05:30
Rishabh Dave
13168834e3 qa/cephfs: add and use get_ceph_cmd_stdout()
Add method get_ceph_cmd_stdout() to class CephFSTestCase so that one
doesn't have to type something as long as
"self.mds_cluster.mon_manager.raw_cluster_cmd()" to execute a
command and get its output. And delete and replace
CephFSTestCase.run_cluster_cmd() too.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-06-28 17:38:19 +05:30
Rishabh Dave
f8f2154e54 qa/cephfs: add and use run_ceph_cmd()
Instead of writing something as long as
"self.mds_cluster.mon_manager.run_cluster_cmd()" to execute a command,
let's add a helper method to class CephFSTestCase and use it instead.

With this, running a command becomes simple - "self.run_ceph_cmd()".

Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-06-28 17:38:19 +05:30
Rishabh Dave
82814ac49d qa/cephfs: add and use get_ceph_cmd_result()
To run a command and get its return value, instead of typing something
as long as "self.mds_cluster.mon_manager.raw_cluster_cmd_result" add a
hepler method in CephFSTestCase and use it. This makes this task very
simple - "self.get_ceph_cmd_result()".

Also, remove method CephFSTestCase.run_cluster_cmd_result() in favour of
this new method.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-06-28 17:38:14 +05:30
Venky Shankar
809d475814 Merge PR #49971 into main
* refs/pull/49971/head:
	doc/cephfs: document MDS_CLIENTS_LAGGY health warning
	qa: ignore warnings
	qa: add test cases to check client eviction if an OSD is laggy
	mds,messages: enable beacon to report clients lagginess
	mds: do not evict client on laggy osds
	common: add new config option to defer client eviction
	osd: add method to check for laggy osds

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2023-06-28 10:23:54 +05:30
Casey Bodley
7d981bfa1a qa/rgw/sts: rename tasks, don't duplicate s3tests
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2023-06-27 17:05:38 -04:00
Casey Bodley
17486bddda qa/rgw/sts: move overrides into overrides.yaml
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2023-06-27 17:05:38 -04:00
Casey Bodley
09e10793e1 qa/s3tests: filter on 'sts_tests' and 'webidentity_tests'
qa/tasks/s3tests.py was adding `not test_of_sts` and `not
webidentity_test` by default, and the rgw/sts suites were adding
those attrs back in `extra_attrs`

when `extra_attrs` was changed to be additive, this started causing
InvocationError failures

instead of using `extra_attrs` to control these filters,
qa/tasks/s3tests.py now uses the `sts_tests` and `webidentity_tests`
flags from the sts yaml files to control whether or not the `not
test_of_sts`/`not webidentity_test` attrs are added to the pytest
command line

Fixes: https://tracker.ceph.com/issues/61838

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2023-06-27 17:05:24 -04:00
Patrick Donnelly
c010e8abfe
qa: add test case for libcephsqlite maybe_reconnect
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-06-27 14:18:39 -04:00
Venky Shankar
f370b581f6 qa: assign file system affinity for replaced MDS
Otherwise, the MDS that just got replaced can transition to a rank
for another file system and the test cannot deterministically infer
which MDS needs to checked.

Fixes: http://tracker.ceph.com/issues/61764
Signed-off-by: Venky Shankar <vshankar@redhat.com>
2023-06-27 09:23:14 +05:30
neeraj pratap singh
36bf907f9e qa: test for session ls with filters
Fixes: https://tracker.ceph.com/issues/61444
Signed-off-by: Neeraj Pratap Singh <neesingh@redhat.com>
2023-06-26 17:55:15 +05:30
Rishabh Dave
2e12e5086d qa/cephfs: create admin_remote instance in CephFSTestCase
admin_remote contains lots of methods that can be useful during testing,
so let's have an easy access to it too.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-06-24 19:33:44 +05:30
Rishabh Dave
0c0041005e qa/cephfs: create CephManager instance in CephFSTestCase
To run a Ceph command conveniently, run_cluster_cmd(), raw_cluster_cmd()
or raw_cluster_cmd_result() must be called. These methods are available
in class CephManager which in turn is available only if an instance of
Filesystem, MDSCluster, CephCluster or MgrCluster is initialized. Having
an instance of CephManager in CephFSTestCase will provide easy access to
these methods.

For example, in CephFS tests writing "self.mon_manager.raw_cluser_cmd()"
instead of writing "self.mds_cluster.mon_manager.raw_cluster()" will
suffice.

This commit provides a basis for upcoming commits in this patch series.
With next patches, running Ceph command will be further simplified. Just
writing self.run_ceph_cmd() will suffice for running a CephFS command.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-06-24 19:33:36 +05:30
Rishabh Dave
437f2c75f5 qa/cephfs: don't import entire module needlessly
Importing entire module ceph_manager.py is pointless since only
ceph_manager.CephManager is required in qa/tasks/cephfs/filesystem.py.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
2023-06-24 19:18:05 +05:30
Ali Maredia
26fda85af2
Merge pull request #52156 from cbodley/wip-qa-rgw-s3tests-extra-attrs
qa/rgw/s3tests: make extra_attrs additive
2023-06-22 16:15:02 -04:00
Casey Bodley
39e5f096d1
Merge pull request #52085 from alimaredia/wip-rgw-tempest-keystone-fix
Tempest tests Keystone Fix

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2023-06-22 13:46:46 -04:00
Ali Maredia
703effd45b qa: rgw/tempest suite only runs on ubuntu latest
Signed-off-by: Ali Maredia <amaredia@redhat.com>
2023-06-22 11:59:59 -04:00
Tobias Urdin
fffa119424 qa: update rgw openstack versions
Signed-off-by: Ali Maredia <amaredia@redhat.com>
2023-06-22 11:59:53 -04:00
Adam King
54413fd570
Merge pull request #51738 from phlogistonjohn/jjm-cephadm-new-deploy
cephadm: create a new version of the deploy command

Reviewed-by: Adam King <adking@redhat.com>
2023-06-22 11:39:49 -04:00
Casey Bodley
c9e873cc52 qa/distos: centos9 enables ceph/el9 copr
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2023-06-22 10:41:46 -04:00