Commit Graph

13009 Commits

Author SHA1 Message Date
Laura Flores
6158e8efcb
Merge pull request #69416 from NitzanMordhai/wip-nitzan-test-osd-recovery-prio-race
osd-recovery-prio: race condition fix in TEST_recovery_pool_priority

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Kamoltat Sirivadhna <ksirivad@redhat.com>
2026-06-23 16:27:28 -05:00
Laura Flores
5475faaddf qa/tasks: change collectl source to download.ceph.com
Getting it from our own service avoids exposing us to
supply chain attacks in our QA infrastructure.

Fixes: https://tracker.ceph.com/issues/76927
Signed-off-by: Laura Flores <lflores@ibm.com>
2026-06-23 15:13:33 -05:00
Kefu Chai
320a3a0529 qa/lsan.supp: suppress CPython 3.12/3.13 interpreter leaks
The python binaries on some CI images and dev boxes ship stripped, so the
allocator frames in an interpreter-shutdown leak come through unsymbolised
(/usr/bin/python3.13+0x...) and the function-name matches above cannot apply.
leak:python3.10 already handled this for 3.10, and a stale comment claimed 3.12
does not leak.

Add leak:python3.12 and leak:python3.13, mirroring the 3.10 entry, so the
interpreter globals are suppressed whatever CPython the build uses.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
2026-06-23 23:02:05 +08:00
mheler
c6bee66adc
Merge pull request #69175 from cbodley/wip-qa-rgw-multisite-gcm 2026-06-23 08:17:59 -05:00
Venky Shankar
9be97d7cde
Merge pull request #68482 from chrisphoffman/wip-73347
qa: Add direct_io test for fscrypt

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2026-06-23 18:34:39 +05:30
Kotresh HR
b80828fbad qa: Add mgr snapshot mirror status tests
Add teuthology coverage for `ceph fs snapshot mirror status`:
parity with asok peer_status, default idle metrics, stale omap
handling, error paths, filter scopes, daemon restart, and cache TTL.

Reuse existing peer_dir_status and metrics assertion helpers.
Adjust stale test wait for InstanceWatcher timeout and set a
short cache TTL in the cache test. Pass peer_uuid via --peer_uuid=
in the test helper for peer-only scope queries.

Fixes: https://tracker.ceph.com/issues/76686
Signed-off-by: Kotresh HR <khiremat@redhat.com>
2026-06-23 18:12:26 +05:30
Adam C. Emerson
5bc34f8ed8
qa/rgw: Remove 'force-branch' from s3tests configs
Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2026-06-22 19:33:47 -04:00
Adam C. Emerson
d0c88cb53c
qa/rgw: Run s3-tests from within the Ceph repo
Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2026-06-22 19:33:47 -04:00
Casey Bodley
591ce1234b qa/dnsmasq: remove unused backup/replace_resolv()
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-06-22 10:34:50 -04:00
Casey Bodley
617f553913 qa/dnsmasq: use managed dnsmasq instead of editing resolv.conf
this task was manually editing /etc/resolv.conf to configure dns names.
on ubuntu 24, these changes were getting clobbered by NetworkManager or
systemd service restarts

instead, manage dnsmasq depending on host distro. rpm-based distros use
NetworkManager's dnsmasq plugin, while deb-based distros use
systemd-resolved to point at the local dnsmasq

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

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-06-22 10:34:50 -04:00
Sridhar Seshasayee
4d29f4e402 osd/PeeringState: add perf counters for PG rebuild times
Track per-OSD PG rebuild duration in prepare_stats_for_publish()
(primary OSD only). Three new counters are added to the
recoverystate_perf collection:

 - pg_rebuild_duration: LONGRUNAVG time counter (sum+count pair);
   This counter internally maintains 'avgcount' that tracks the
   cumulative number of rebuild events.
 - pg_rebuild_max_secs: maximum rebuild duration observed in seconds
 - pg_rebuild_min_secs: minimum rebuild duration observed in seconds

The logic uses a per-PG in-memory latch (rebuild_start_time) to
capture the redundancy failure entry point. When a PG is first observed
to be in a vulnerable state (PG_STATE_DEGRADED,
PG_STATE_UNDERSIZED, or num_objects_misplaced/degraded > 0), it
latches info.stats.last_change as the start time, provided
last_change > last_clean, which ensures only genuine new failures
after the prior clean interval are tracked.

On recovery, the rebuild duration is computed as (now - rebuild_start_time)
and is only recorded if delta num_objects_recovered > 0 or the PG had
confirmed redundancy loss at latch time, filtering out spurious state
transitions. The latch is cleared after each recorded event.

The latch is also cleared in clear_primary_state() so that an interval
change or role transition (primary -> replica) does not carry a stale
start time or baseline recovered count into a future interval.

The new last_degraded is intentionally not used here to retain compatibility
with older Ceph branches where the field doesn't exist and requires encoding
changes. A future simplification can replace the latch with a direct
(last_clean - last_degraded) calculation once last_degraded is consistently
available.

This interim solution is a close approximation of the PG rebuild time.

These counters are scraped per-OSD by ceph-exporter and exposed to
Prometheus, enabling durability score calculations over user-defined
time windows.

Other Changes:
1. Add unit tests to TestPeeringState.cc that exercise the latch logic.
2. Add a standalone integration test to verify that the rebuild perf counters
   are incremented on the primary OSD after a recovery event.

Fixes: https://tracker.ceph.com/issues/77493
Signed-off-by: Sridhar Seshasayee <sridhar.seshasayee@ibm.com>
2026-06-22 19:19:34 +05:30
Sun Yuechi
51a82211ed qa/lsan.supp: suppress seastore reactor-teardown leaks
unittest-seastore runs the seastar reactor on a separate thread
(SeastarRunner) and stops it at exit without draining its pending
tasks, so a few cached extents those tasks still held are leaked at
shutdown. Suppress them by the three seastore subsystems they come from.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
2026-06-22 14:52:57 +08:00
Sun Yuechi
e35cdb7123 qa/lsan.supp: suppress still-reachable third-party leaks
Several unittests fail LeakSanitizer on still-reachable allocations that
belong to third-party libraries, not to Ceph. These are boost.thread's
main-thread TLS, OpenSSL's one-time init (the ForkDeathTest children
_exit() before it is freed), and the cipher, DRBG and error-stack state
that OpenSSL and libcryptsetup keep behind the librbd encryption and
migration unittests. None get freed without OPENSSL_cleanup(), so suppress
them by their allocation entry points.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
2026-06-22 14:52:22 +08:00
Kefu Chai
767e1b6514
Merge pull request #69316 from sunyuechi/wip-tests-venv-system-site-packages
test: optionally run test venvs with system site-packages

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
2026-06-21 07:14:12 +08:00
Sun Yuechi
ba5da131ec mypy: skip follow_imports for prettytable
With test venvs on system site-packages, mypy picks up the system
prettytable (3.4.0+, typed). It flags mgr's add_row(tuple) against the
list[Any] signature (src/mypy.ini) and qa's float_format = str against
the dict[str, str] property (qa/mypy.ini). Skip follow_imports in both.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
2026-06-20 14:49:16 +08:00
Ilya Dryomov
5b397048cc
Merge pull request #68161 from abitdrag/wip-miki-image-prim-snap-removal
rbd-mirror: prune obsolete primary mirror snapshots after relocation

Reviewed-by: Ramana Raja <rraja@redhat.com>
Reviewed-by: VinayBhaskar-V <vvarada@redhat.com>
Reviewed-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2026-06-19 11:38:14 +02:00
Ilya Dryomov
dc130970dd
Merge pull request #69414 from Adarsha1999/teuthology-smoke-log-ignorelist
qa/smoke/basic: add log-ignorelist entries for expected smoke test warnings

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2026-06-19 00:30:09 +02:00
Adarsha Dinda
517c72f659 qa/smoke/basic: add log-ignorelist entries for expected smoke test warnings
Ignore FS_DEGRADED in libcephfs_interface_tests and MON_DOWN in
rbd_python_api_tests to avoid false failures from transient cluster health
messages.

Signed-off-by: Adarsha Dinda <adarshadinda@Adarshas-MacBook-Pro.local>
2026-06-18 22:29:30 +05:30
Casey Bodley
c99131fa29
Merge pull request #69425 from cbodley/wip-76995
Reapply "qa/rgw/crypt: disable failing kmip testing"

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
2026-06-18 10:10:59 -04:00
Kotresh HR
2fca3c3538
Merge pull request #69074 from kotreshhr/mirror-metrics-counter-dump
tools/cephfs_mirror: Expose Mirror metrics via asok counter dump

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2026-06-18 09:40:55 +05:30
Miki Patel
a10f58df8c rbd-mirror: prune obsolete primary mirror snapshots after relocation
Previously, obsolete primary and demoted primary snapshots on the
secondary cluster were not cleaned up immediately after relocation.
Instead, old primary snapshots remained until a subsequent promote
operation triggered their cleanup, while old demoted primary snapshots
persisted until a later demote operation removed them.

Adding changes for proactive cleanup of obsolete primary and demoted
primary snapshots that are no longer required after relocation.

Also adding test coverage to validate the cleanup behavior.

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

Signed-off-by: Miki Patel <miki.patel132@gmail.com>
2026-06-17 16:17:27 +05:30
Nitzan Mordechai
90b925d824 osd-recovery-prio: race condition fix in TEST_recovery_pool_priority
Use norecover to pause recovery ops while inspecting reservation
state. Without it, recovery can complete before the admin-socket
dump is captured, causing intermittent test failures

Fixes: https://tracker.ceph.com/issues/77113
Signed-off-by: Nitzan Mordechai <nmordech@ibm.com>
2026-06-17 10:34:58 +00:00
Kotresh HR
3fc6457a8f qa: Add tests for cephfs_mirror_directory perf counters
Verify counter dump registration, current-sync gauges while syncing
(full/delta), last-sync and summary counters after idle sync, and
extend mirror stats and remote-snap failure tests for per-directory
snaps_* and dir_state.

Fixes: https://tracker.ceph.com/issues/73457
Signed-off-by: Kotresh HR <khiremat@redhat.com>
2026-06-16 23:11:16 +05:30
Sridhar Seshasayee
2ccd861d04
Merge pull request #69366 from sseshasa/wip-fix-ok-to-upgrade-osd-sort-order
mgr/DaemonServer: Aggregate and globally sort OSDs for ok-to-upgrade

Reviewed-by: Radoslaw Zarzynski <rzarzynski@redhat.com>
Reviewed-by: Nitzan Mordechai <nmordech@ibm.com>
2026-06-16 21:46:13 +05:30
Kotresh HR
28a2a2c882 qa/cephfs: Add test for duplicate directory acquire notify
Verify that reloading the mirroring module and removing a directory
does not leave a ghost replayer entry that keeps syncing snapshots.

Fixes: https://tracker.ceph.com/issues/77398
Signed-off-by: Kotresh HR <khiremat@redhat.com>
2026-06-15 16:15:33 +05:30
John Mulligan
d14e816a13
Merge pull request #69289 from anoopcs9/fix-run-samba-perms
cephadm/smb: Bind mount /run with 0755

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: John Mulligan <jmulligan@redhat.com>
Reviewed-by: Xavi Hernandez <xhernandez@gmail.com>
2026-06-15 15:42:48 -04:00
Ericmzhang
69c30a7d54
Merge pull request #68532 from Ericmzhang/wip-overlapped-roots-autoscale
Mgr: Allow autoscaling for overlapped roots
2026-06-15 10:28:56 -07:00
SrinivasaBharathKanta
ca0bc48a2a
Merge pull request #69005 from Jayaprakash-ibm/wip-jaya-mon-features-test-fix
qa: fix TEST_mon_features feature checks in mon/misc.sh
2026-06-14 04:24:52 +05:30
Kotresh HR
5bfb9a8db3
Merge pull request #68018 from kotreshhr/mirror-asok-metrics
tools/cephfs_mirror: Add metrics
2026-06-13 23:59:00 +05:30
Kotresh HR
1d676c2455 qa: Add mirror metrics testcases
Add testcases for newly introduced mirror
metrics and validate it via 'fs mirror peer status'
asok interface.

Fixes: https://tracker.ceph.com/issues/73453
Signed-off-by: Kotresh HR <khiremat@redhat.com>
2026-06-13 00:45:31 +05:30
Kotresh HR
75093b138e qa: Fix the mirroring tests with new nested peer_status output
Fixes: https://tracker.ceph.com/issues/73453
Signed-off-by: Kotresh HR <khiremat@redhat.com>
2026-06-13 00:43:15 +05:30
Redouane Kachach
6a348c3b49
Merge pull request #69300 from rkachach/fix_issue_mgmt_gw_qa
qa: extend the ignore-list for the mgmt-gateway test suite

Reviewed-by: Shweta Bhosale <Shweta.Bhosale1@ibm.com>
2026-06-12 15:16:14 +02:00
Redouane Kachach
745f16a58a
qa: extend the ignore-list for the mgmt-gateway test suite
Let's add CEPHADM_AGENT_DOWN and CEPHADM_STRAY_DAEMON errors

Fixes: https://tracker.ceph.com/issues/77131
Signed-off-by: Redouane Kachach <rkachach@ibm.com>
2026-06-12 13:01:07 +02:00
Redouane Kachach
a46a9e45a3
Merge pull request #69299 from rkachach/fix_issue_77130
qa/cephadm: fix test_repos.sh for jammy nodes

Reviewed-by: Shweta Bhosale <Shweta.Bhosale1@ibm.com>
Reviewed-by: Adam King <adking@redhat.com>
2026-06-12 12:50:24 +02:00
Aishwarya Mathuria
cb95853a1d
Merge pull request #66885 from amathuria/wip-amat-crimson-merge-support
Crimson PG merging support
2026-06-12 15:18:37 +05:30
Casey Bodley
d27261d0c2 Reapply "qa/rgw/crypt: disable failing kmip testing"
This reverts commit fd20467981.

kmip tests are failing again on ubuntu 24 because PyKMIP doesn't support
python 3.12. we'll be removing ubuntu 22 from main, so can't just pin the
test to that distro in the meantime

we're expecing the nvmeof team to add python 3.12 support in our
ceph/PyKMIP fork, and can reenable kmip testing once that happens

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

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-06-11 14:43:31 -04:00
Kamoltat (Junior) Sirivadhna
cce2a2fcd1
Merge pull request #69402 from Ericmzhang/wip-fix-mon-stretch_cluster
qa: Fix stretch_cluster.py missing function call
Reviewed-by: Kamoltat Sirivadhna <ksirivad@redhat.com>
2026-06-11 09:47:19 -04:00
Sridhar Seshasayee
6761549c5a mgr/DaemonServer: Aggregate and globally sort OSDs for ok-to-upgrade
The 'ok-to-upgrade' command output sorting did not scale accurately
when target CRUSH buckets contained multiple child buckets (e.g., a
chassis containing multiple hosts). OSDs were previously sorted
individually per child bucket and appended sequentially. This created
fragmented, per-host sort segments rather than a globally sorted list
for the parent bucket.

Changes:

1. Fix the issue above by aggregating all child OSDs into a single vector prior
to executing a single, global sort operation based on PG counts. Additionally,
optimize memory efficiency and future-proof the logic by reserving continuous
vector blocks to avoid dynamic heap reallocations.

2. Add integration tests with chassis and rack based CRUSH hierarchies which
verifies the ok-to-upgrade functionality. In addition, the tests crucially
verify the order of OSDs returned is according to the ascending order of
acting PG count. Additionally, make minor fix-ups to lines that determine the
length of a list in JSON response by removing the redundant "| bc".

Fixes: https://tracker.ceph.com/issues/77272
Signed-off-by: Sridhar Seshasayee <sridhar.seshasayee@ibm.com>
2026-06-11 17:42:59 +05:30
Aishwarya Mathuria
4e44d8a160 qa/suites/crimson: Add a test for PG merging in the crimson suite
Signed-off-by: Aishwarya Mathuria <amathuri@redhat.com>
2026-06-11 10:25:49 +05:30
Anthony D'Atri
d93121a2e3
Merge pull request #60492 from anthonyeleven/more-pgs
src/common/options: Increase autoscaler PG target and overload values
2026-06-10 20:24:36 -04:00
Eric Zhang
c22d5b4f41 qa: Fix task missing function call
lambda was missing function call so always returned true

Signed-off-by: Eric Zhang <emzhang@ibm.com>
2026-06-10 12:41:21 -07:00
Patrick Donnelly
64c2574184
Merge PR #66726 into main
* refs/pull/66726/head:
	doc: Update documentation to reflect new functionality
	test: Add integration tests for EC Omap operations and recovery
	osd: Hook up omap operations in EC pools
	osd: Allow for recovery of OMAP header and entries in EC pools
	doc: Write design document to explain the reasoning behind implementing this feature
	osd: Introduce functions required for EC OMAP support
	osd: Add ECOmapJournal class and relocate OmapUpdateType enum class

Reviewed-by: Bill Scales <bill_scales@uk.ibm.com>
Reviewed-by: Alex Ainscow <aainscow@uk.ibm.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@ibm.com>
2026-06-10 14:30:59 -04:00
Anoop C S
31e1c7bd5e qa/smb: Test SID resolution in AD joined containers
Verify that rpcclient lookupsids resolves domain user SIDs correctly
inside the smbd container, preventing regressions on /run bind mount
permissions that break smbd to winbindd communication.

Fixes: https://tracker.ceph.com/issues/77120
Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2026-06-10 17:05:18 +05:30
Jaya Prakash
e24055cc8a
Merge pull request #68984 from Jayaprakash-ibm/wip-faster-alloc-recovery-testing
qa: Add Teuthology tests for BlueStore faster allocation recovery

Reviewed-by: Jaya Prakash <jayaprakash@ibm.com>
2026-06-10 17:01:07 +05:30
Anthony D'Atri
b54ed6d6a4 qa/workunits/mon: Update pg_autoscaler.sh in conjunction with https://github.com/ceph/ceph/pull/60492
Signed-off-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
2026-06-09 13:42:27 -07:00
Eric Zhang
7f9e383ecb qa: Add overlapped roots test case
Added overlapped roots test case for CRUSH rules
rule zone-1-only
  step take zone us-east-1
  step chooseleaf firstn 3 type host
  step emit

rule zone-2-only
  step take zone us-east-2
  step chooseleaf firstn 3 type host
  step emit

rule zone-3-only
  step take zone us-east-3
  step chooseleaf firstn 3 type host
  step emit

rule default
   step take default
  step chooseleaf firstn 3 type host
  step emit

and osd tree
    -1         6.00000  root default
     -8         6.00000      region us-east
     -5         2.00000          zone us-east-1
    -13         1.00000              host host0
      0    ssd  1.00000                  osd.0
    -14         1.00000              host host1
      1    ssd  1.00000                  osd.1
     -6         2.00000          zone us-east-2
    -15         1.00000              host host2
      2    ssd  1.00000                  osd.2
    -16         1.00000              host host3
      3    ssd  1.00000                  osd.3
     -7         2.00000          zone us-east-3
    -17         1.00000              host host4
      4    ssd  1.00000                  osd.4
    -18         1.00000              host host5
      5    ssd  1.00000                  osd.5

    -1: pg_target = 300
    -5: pg_target = 100
    -6  pg_target = 100
    -7: pg_target = 100

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

Signed-off-by: Eric Zhang <emzhang@ibm.com>
2026-06-09 13:16:33 -07:00
Laura Flores
b09b866f12
Merge pull request #68837 from NitzanMordhai/wip-nitzan-cephtool-singleton-bluestore-evicting-unresponsive-client
qa: ignore evicted client warnings for singletone bluestore

Reviewed-by: Radosław Zarzyński <Radoslaw.Adam.Zarzynski@ibm.com>
Reviewed-by: Yuri Weinstein <yweinste@ibm.com>
2026-06-09 13:59:59 -05:00
John Mulligan
3700e6abaf
Merge pull request #68825 from phlogistonjohn/jjm-smb-ctl-tool-fe
smb: add a smb remote control client tool frontend

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Anoop C S <anoopcs@cryptolab.net>
2026-06-09 14:21:32 -04:00
Casey Bodley
8456be4d6e
Merge pull request #69253 from cbodley/wip-76725
osdc: deliver neorados completions to associated executor

Reviewed-by: Adam Emerson <aemerson@redhat.com>
Reviewed-by: Shilpa Jagannath <smanjara@redhat.com>
2026-06-09 08:24:19 -04:00
Matty Williams
7d684df763 test: Add integration tests for EC Omap operations and recovery
Assisted-by: Bob
Used for writing tests following the pattern of existing tests.

Fixes: https://tracker.ceph.com/issues/74188
Signed-off-by: Matty Williams <Matty.Williams@ibm.com>
2026-06-09 09:46:07 +01:00
Ericmzhang
6d92b5650e
Merge pull request #69176 from Ericmzhang/wip-fix-pg_autoscaler-tests
qa: Fix pg autoscaler tests
2026-06-08 12:12:11 -07:00
Jaya Prakash
a4cb4a236b qa/suites: add faster allocation recovery thrashing suite
Signed-off-by: Jaya Prakash <jayaprakash@ibm.com>
2026-06-08 17:22:17 +00:00
Jaya Prakash
818dd863f2 qa/workunits: add EC fio workload for allocation recovery testing
Signed-off-by: Jaya Prakash <jayaprakash@ibm.com>
2026-06-08 17:22:02 +00:00
Venky Shankar
44f1f41750
Merge pull request #56634 from neesingh-rh/wip-64064
mds: comply with the valid range for `mds_log_max_segments`

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2026-06-08 14:33:10 +05:30
Venky Shankar
b76b2c3b3d
Merge pull request #65950 from joscollin/wip-71701-near-full
qa: drop creating huge files in test_cephfs_mirror_cancel_sync

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2026-06-08 10:05:28 +05:30
Casey Bodley
561871e251
Merge pull request #69172 from cbodley/wip-76997
qa/rgw: bump tempest version from 34.1.0 to 45.0.0

Reviewed-by: Tobias Urdin <tobias.urdin@binero.com>
2026-06-05 11:03:50 -04:00
Venky Shankar
f741003dc6 Merge PR #69118 into main
* refs/pull/69118/head:
	qa/cephfs: install ceph-mgr-modules-standard for cephfs tests

Reviewed-by: Jos Collin <jcollin@redhat.com>
Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
2026-06-05 18:49:56 +05:30
Sridhar Seshasayee
0fbcd19bba
Merge pull request #68910 from sseshasa/wip-osd-perf-counters-for-durability-score
osd: add last_degraded field to pg_stat_t

Reviewed-by: Radoslaw Zarzynski <rzarzynski@redhat.com>
2026-06-05 13:50:14 +05:30
Redouane Kachach
d486328b71
qa/cephadm: fix test_repos.sh for jammy nodes
The test uses add-repo --release 17.2.6 to verify version-string repo
handling, but debian-17.2.6 only has focal and bullseye suites and
jammy packages weren't built until 17.2.7. This causes apt-get update
to fail with a 404 on ubuntu_22.04 nodes.

see: https://download.ceph.com/debian-17.2.6/dists/

This fix bumps the version to 17.2.7 which includes a jammy suite.

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

Signed-off-by: Redouane Kachach <rkachach@ibm.com>
2026-06-05 10:07:39 +02:00
Casey Bodley
c4d9a406c8 test/neorados: test cross-executor completions
repurpose ceph_test_neorados_completions to verify that completions are
delivered to the handler's associated executor

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-06-04 14:40:23 -04:00
Casey Bodley
12d48cc8b8 qa/rgw: disable neutron service in tempest.conf
Suggested-by: Tobias Urdin <tobias.urdin@binero.com>
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-06-04 13:09:02 -04:00
Casey Bodley
5d1f248902 qa/rgw: bump tempest version from 34.1.0 to 45.0.0
this 34.1.0 version fails to pip install under python 3.12 when testing
ubuntu 24.04

i chose new version 45.0.0 because it corresponds to this commit:
> Use stable constraint in tox to release new tag for 2025.2

which matches the stable/2025.2 tag we use for keystone

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

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-06-04 13:09:02 -04:00
Casey Bodley
abc947d65f
Merge pull request #69171 from cbodley/wip-76996
qa/rgw: remove ragweed from multifs subsuite

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
2026-06-04 10:38:30 -04:00
Sridhar Seshasayee
252d149238 osd: add last_degraded field to pg_stat_t
Introduce a 'last_degraded' timestamp to the pg_stat_t structure to track
the initial point of redundancy loss. This field, used in conjunction
with 'last_clean', allows the manager to calculate a cluster-wide
durability score by measuring the duration of vulnerability windows.

Changes:
1) Add last_degraded (utime_t) to pg_stat_t in osd_types.h.
2) Increment pg_stat_t encoding version to 31. The decode logic
   defaults last_degraded to last_clean for backward compatibility
   during rolling upgrades.
3) Update operator==, dump(), and generate_test_instances() to
   support ceph-dencoder testing and JSON output.
4) Implement latching logic in PeeringState::prepare_stats_for_publish():
   - A PG is considered vulnerable if in DEGRADED or UNDERSIZED state.
   - last_degraded is set to 'now' only if it is <= last_clean,
     effectively latching the timestamp to the start of the failure
     event until the PG next becomes clean.
5) Standalone tests to verify:
   - The last_degraded timestamp latching logic.
   - Verify last_degraded timestamp is modified when OSDs are marked 'out' for
     draining purposes in which case PGs are marked undersized.
6) Release note the addition of 'last_degraded' field to PG stats.

Fixes: https://tracker.ceph.com/issues/76604
Signed-off-by: Sridhar Seshasayee <sridhar.seshasayee@ibm.com>
2026-06-04 19:44:56 +05:30
John Mulligan
1b23378bce qa/suites/orch: enable remote control sidecar for a mgr + resources test
Signed-off-by: John Mulligan <jmulligan@redhat.com>
2026-06-04 09:57:09 -04:00
John Mulligan
7f51c627f7 qa/workunits/smb: add a test sub-suite for the new ceph-smb-ctl tool
Signed-off-by: John Mulligan <jmulligan@redhat.com>
2026-06-04 09:57:09 -04:00
NitzanMordhai
c7a578fa80
Merge pull request #64805 from NitzanMordhai/wip-nitzan-mgr-from-cache-ttl-to-cache-changed
Enhance mgr cache - from cache based on ttl to cache based on changes

Reviewed-by: Sridhar Seshasayee <sridhar.seshasayee@ibm.com>
                         Signed-off-by: Nizamudeen A <nia@redhat.com>
2026-06-04 12:59:45 +03:00
Laura Flores
50dcf44af1
Merge pull request #69180 from ljflores/wip-tracker-68669
qa/workunits/rados: fetch files via GitHub instead of git.ceph.com

Reviewed-by: Kamoltat Sirivadhna <ksirivad@ibm.com>
2026-06-03 16:45:40 -05:00
neeraj pratap singh
ede39e97ab qa: updating the 'mds_log_max_segments' to new min value and including 'test_meta_injection' into test suite
Fixes: https://tracker.ceph.com/issues/64064
Signed-off-by: Neeraj Pratap Singh <neesingh@redhat.com>
2026-06-03 17:04:58 +05:30
Jon Bailey
82dbf20104
Merge pull request #66459 from aainscow/ec_direct_reads_pr2
EC Direct Reads

Reviewed-by: Bill Scales <bill_scales@uk.ibm.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Adam Emerson <aemerson@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2026-06-03 10:13:42 +01:00
Nitzan Mordechai
403340bcf8 mgr: replace TTLCache with MgrMapCache and protect api with readonly
This patch removes the old TTLCache implementation and introduces
a new generic MgrMapCache driven by a runtime toggle:

- Add `mgr_map_cache_enabled` config option in global.yaml
- Swap out `ttl_cache` for `api_cache` (MgrMapCache) in ActivePyModules
- Update cacheable_get_python() and get_python() to use LFU‐based api_cache
- add new get_mutable parameter to the get api call to get a copy.
- Invalidate api_cache on notify_all events
- Remove all TTLCache headers, sources, and tests
- Include MgrMapCache.cc in CMakeLists and update BaseMgrModule bindings
- Improve logging around cache hits, misses, and state changes

- ActivePyModules
  * Remove unused update_cache_metrics()
  * Log cache hits/misses inline and only insert into cache when
    enabled+cacheable (with proper Py_INCREF)
  * Switch get_python() to use PyFormatterRO for cacheable routes, PyFormatter otherwise

- MgrMapCache/LFUCache
  * Add can_read_cache()/can_write_cache() helpers and use const& for key parameters
  * Guard perf counter increments and improve debug logging

- PyFormatter
  * Add PyFormatterRO subclass that freezes dicts/lists into read-only
    proxies on the fly

- Python mgr_module
  * Simplify get() to return raw result

This change ensures immutable JSON output on cache hits and tightens up cache logic.

mgr/cli: add cache flush command with proper status reporting

Allow operators to invalidate individual mgr Python caches at runtime
without restarting the manager. Introduces a new CLI command:

  $ ceph mgr cli cache flush <map-name>

which returns success or a clear error if the named cache entry doesn’t
exist or isn’t cacheable. This makes it easy to drop stale cached maps
(e.g. osd_map, mon_map) on demand.

Fixes: https://tracker.ceph.com/issues/72447
Signed-off-by: Nitzan Mordechai <nmordec@ibm.com>

mgr: add new unit tests for MgrMapCache

- Guard against null perf‐counter before calling inc(), preventing crashes
- Add “foo” to allowed_keys list (for test coverage)
- Rename and refocus the CMake test target from TTLCache to MgrMapCache
- Introduce test_mgrmapcache.cc with LFUCache tests.
- Remove the obsolete test_ttlcache.cc

Fixes: https://tracker.ceph.com/issues/72447
Signed-off-by: Nitzan Mordechai <nmordec@ibm.com>

mgr/test_cache: add new tests

adding new unit-test for mgrcache

Fixes: https://tracker.ceph.com/issues/72447
Signed-off-by: Nitzan Mordechai <nmordec@ibm.com>
2026-06-03 09:13:28 +00:00
Patrick Donnelly
cbacb2358b
Merge PR #69222 into main
* refs/pull/69222/head:
	qa: install nvme-cli only if distro remains rocky10

Reviewed-by: Redouane Kachach <rkachach@redhat.com>
2026-06-02 15:59:10 -04:00
Kefu Chai
9ded62f2e1
Merge pull request #69214 from tchaikov/wip-cephadm-iscsi-gw
qa/cephadm: query iSCSI gateway FQDN from inside the container

Reviewed-by: Redouane Kachach <rkachach@ibm.com>
2026-06-02 07:35:37 +08:00
SrinivasaBharathKanta
ad14e4a75d
Merge pull request #69026 from jamiepryde/ec-profile-deprecation-warning
Add health warning for deprecated EC plugins and techniques
2026-06-02 04:49:05 +05:30
Patrick Donnelly
038383a2ff
qa: install nvme-cli only if distro remains rocky10
Notably, only include these the `dnf install` commands if the distro is
not overriden by some other mechanism (like cephfs kernel overrides).

This is only a problem for tentacle presently as the k-stock kernel will
override with centos9.

Fixes: https://tracker.ceph.com/issues/77037
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
2026-06-01 12:28:34 -04:00
Kefu Chai
50ef945949 qa/cephadm: query iSCSI gateway FQDN from inside the container
rbd-target-api validates that the gateway hostname supplied by gwcli
matches the container's own socket.getfqdn(). Running the same call on
the host can return a different value when the host and container resolve
names differently (e.g. on Rocky 10), causing gateway creation to fail
with HTTP 400 and all subsequent gwcli configuration to break silently.

Query the FQDN from inside the iSCSI container directly so the value is
always consistent with what rbd-target-api expects. This also removes the
"run twice" workaround, which was compensating for host-side DNS
warm-up flakiness rather than addressing the underlying mismatch.

Fixes: https://tracker.ceph.com/issues/74577
Signed-off-by: Kefu Chai <k.chai@proxmox.com>
2026-06-01 18:40:51 +08:00
Vallari Agrawal
6790982813
Merge pull request #69135 from VallariAg/wip-nvmeof-teuthology-mon-conf
qa/suites/nvmeof: set beacon grace and connect panic
2026-05-31 21:30:05 +05:30
Ali Masarwa
6c76810aa9
Merge pull request #66500 from AliMasarweh/wip-alimasa-global-cors
RGW: add support for global CORS rule

Reviewed-by: Naman Munet <naman.munet@ibm.com>, Casey Bodley <cbodley@redhat.com>
2026-05-31 13:30:56 +03:00
Eric Zhang
f6a51dda85 qa: Fix teuthology test timing out
Enable autoscale mode for pools which is default off for teuthology
Increase mon_target_pg_per_osd so pools scale up by enough
Signed-off-by: Eric Zhang <emzhang@ibm.com>
2026-05-29 14:50:31 -07:00
Laura Flores
71a78eaf99 qa/workunits/rados: fetch files via GitHub instead of git.ceph.com
The current method fetches files from git.ceph.com, which is unreliable
and sometimes causes the file to contain HTML output instead of the C++ code.

Fetching from GitHub is a more reliable way to get the C++ code.

Fixes: https://tracker.ceph.com/issues/68669
Signed-off-by: Laura Flores <lflores@ibm.com>
2026-05-29 16:45:17 -05:00
Casey Bodley
84040d8829 qa/rgw/multisite: use random aes algorithm
test coverage for `rgw crypt sse algorithm: aes-256-gcm` was recently
added to the multisite suite, doubling the number of jobs from 2 to 4

instead of duplicating the multisite jobs for both cbc and gcm, select
a random algorithm for each of the 2 existing jobs

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-05-29 13:44:47 -04:00
Ilya Dryomov
762c11da5f
Merge pull request #68899 from batrick/i76586
qa: ignore POOL_FULL for rbd tests exercising full pools

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2026-05-29 18:02:02 +02:00
Patrick Donnelly
2fa91d6db0
Merge PR #67683 into main
* refs/pull/67683/head:
	qa/tasks/cbt: construct venv just for cbt
	qa/distros: use consistent naming
	qa/tasks/nvme_loop: fix nvme loop task for ubuntu noble
	qa/distros: add ubuntu_24.04 as supported container host
	qa/distros: bump ubuntu_latest.yaml to 24.04
	qa/distros: add all/ubuntu_24.04.yaml
	qa/suites/rados/encoder: use random supported distro
	qa/ceph-ansible: symlink supported-random-distro$
	qa/fs/fscrypt: symlink supported-random-distro$
	qa/cephmetrics: symlink supported-random-distro$

Reviewed-by: Redouane Kachach <rkachach@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
2026-05-29 11:08:23 -04:00
Patrick Donnelly
7699baa9c6
Merge PR #69163 into main
* refs/pull/69163/head:
	qa/tasks: capture CommandCrashedError when running nvme list cmd

Reviewed-by: Patrick Donnelly <pdonnell@ibm.com>
2026-05-29 11:07:03 -04:00
Casey Bodley
95f666ed7c qa/rgw: remove ragweed from multifs subsuite
it's currently broken with newer python on rocky 10 and ubuntu 24
(tracked in https://tracker.ceph.com/issues/72500) and doesn't provide
interesting test coverage outside of rgw/upgrade

Fixes: https://tracker.ceph.com/issues/76996
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-05-29 10:44:10 -04:00
Ilya Dryomov
f18652255a
Merge pull request #68095 from lumir-sliva/fix-deprecated-egrep-fgrep
qa,src: replace deprecated egrep/fgrep with grep -E/grep -F

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2026-05-29 15:52:14 +02:00
Jamie Pryde
0271e64f4b qa: Ignore deprecated EC plugin warning in teuthology tests
Add DEPRECATED_EC_PLUGIN to the list of health warnings to
ignore in the thrash-erasure-code-* tests that use deprecated
plugins or techniques. It is expected that this warning will
be raised.

Signed-off-by: Jamie Pryde <jamiepry@uk.ibm.com>
2026-05-29 12:44:56 +01:00
Vallari Agrawal
7f8bcdc7d1
qa/suites/nvmeof: ignore "have only 1 nvmeof gateway"
Add "have only 1 nvmeof gateway" to ignorelist.
NVMEOF_SINGLE_GATEWAY is already part of ignorelist
but tests sometimes fail on "have only 1 nvmeof gateway".

Thrasher or scalability tests can trigger this but there
are enough asserts to ensure all expected gateways are
up, we can safely ignore this healthcheck warning.

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

Signed-off-by: Vallari Agrawal <vallari.agrawal@ibm.com>
2026-05-29 15:08:23 +05:30
Redouane Kachach
0bf55d6a8b
qa/tasks: capture CommandCrashedError when running nvme list cmd
The safe_while retry loop does not catch exceptions, so a
CommandCrashedError from `nvme list` bypasses it entirely. Catch
CommandCrashedError and continue the retry loop instead.

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

Signed-off-by: Redouane Kachach <rkachach@ibm.com>
2026-05-29 11:22:01 +02:00
Patrick Donnelly
5ac8b6fecd
Merge PR #69055 into main
* refs/pull/69055/head:
	qa/suites/upgrade: ignore osd in unknown state

Reviewed-by: Laura Flores <lflores@redhat.com>
2026-05-28 13:57:54 -04:00
Patrick Donnelly
4681cb7b34
qa/suites/upgrade: ignore fs down variant
Fixes: https://tracker.ceph.com/issues/76969
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
2026-05-28 13:54:38 -04:00
Jon Bailey
06034c676c qa: test_rados_tool - change check on osd dump command to use json
Previously the test_rados_tool.sh test was dependant on flag ordering. This mean if you added a new flag after full_quota (such as split_reads or ec_optimizations), this could break the teuthology test if we try to test with these flags on. We prevent this by changing this condition to use json to ensure we are no longer depend on the order of the flags which the default command line output gives.

This also adds a check to ensure the pool name matches what we are working on, to ensure we don't get false-positives if we happened to have other pools.

Signed-off-by: Jon Bailey <jonathan.bailey1@ibm.com>
2026-05-28 15:15:51 +01:00
Casey Bodley
54a58396ff
Merge pull request #67246 from mheler/wip-rgw-sse-gcm
rgw: Add AES-256-GCM support for RGW server-side encryption

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2026-05-27 17:22:10 -04:00
Casey Bodley
61cd7517b5
Merge pull request #64293 from cbodley/wip-71265
rgw: add s3control apis for account-wide PublicAccessBlock

Reviewed-by: Adam Emerson <aemerson@redhat.com>
2026-05-27 09:08:45 -04:00
Patrick Donnelly
614993a066
qa/tasks/cbt: construct venv just for cbt
So we no longer need to install system-wide.

Avoids errors like on Ubuntu 24.04:

    2026-05-24T13:48:19.681 DEBUG:teuthology.orchestra.run.trial043:> python3 -m pip install -r /home/ubuntu/cephtest/cbt/requirements.txt
    2026-05-24T13:48:19.861 INFO:teuthology.orchestra.run.trial043.stderr:error: externally-managed-environment
    2026-05-24T13:48:19.861 INFO:teuthology.orchestra.run.trial043.stderr:
    2026-05-24T13:48:19.861 INFO:teuthology.orchestra.run.trial043.stderr:× This environment is externally managed
    2026-05-24T13:48:19.861 INFO:teuthology.orchestra.run.trial043.stderr:╰─> To install Python packages system-wide, try apt install
    2026-05-24T13:48:19.862 INFO:teuthology.orchestra.run.trial043.stderr:    python3-xyz, where xyz is the package you are trying to
    2026-05-24T13:48:19.862 INFO:teuthology.orchestra.run.trial043.stderr:    install.
    2026-05-24T13:48:19.862 INFO:teuthology.orchestra.run.trial043.stderr:
    2026-05-24T13:48:19.862 INFO:teuthology.orchestra.run.trial043.stderr:    If you wish to install a non-Debian-packaged Python package,
    2026-05-24T13:48:19.862 INFO:teuthology.orchestra.run.trial043.stderr:    create a virtual environment using python3 -m venv path/to/venv.
    2026-05-24T13:48:19.862 INFO:teuthology.orchestra.run.trial043.stderr:    Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
    2026-05-24T13:48:19.862 INFO:teuthology.orchestra.run.trial043.stderr:    sure you have python3-full installed.
    2026-05-24T13:48:19.862 INFO:teuthology.orchestra.run.trial043.stderr:
    2026-05-24T13:48:19.862 INFO:teuthology.orchestra.run.trial043.stderr:    If you wish to install a non-Debian packaged Python application,
    2026-05-24T13:48:19.862 INFO:teuthology.orchestra.run.trial043.stderr:    it may be easiest to use pipx install xyz, which will manage a
    2026-05-24T13:48:19.862 INFO:teuthology.orchestra.run.trial043.stderr:    virtual environment for you. Make sure you have pipx installed.
    2026-05-24T13:48:19.863 INFO:teuthology.orchestra.run.trial043.stderr:
    2026-05-24T13:48:19.863 INFO:teuthology.orchestra.run.trial043.stderr:    See /usr/share/doc/python3.12/README.venv for more information.
    2026-05-24T13:48:19.863 INFO:teuthology.orchestra.run.trial043.stderr:
    2026-05-24T13:48:19.863 INFO:teuthology.orchestra.run.trial043.stderr:note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
    2026-05-24T13:48:19.863 INFO:teuthology.orchestra.run.trial043.stderr:hint: See PEP 668 for the detailed specification.
    2026-05-24T13:48:19.883 DEBUG:teuthology.orchestra.run:got remote process result: 1
    2026-05-24T13:48:19.883 ERROR:teuthology.run_tasks:Saw exception from tasks.
    Traceback (most recent call last):
      File "/home/teuthworker/src/git.ceph.com_teuthology_3686f8793d626abcf5a0018da0a50786e41fed9d/teuthology/run_tasks.py", line 112, in run_tasks
        manager.__enter__()
      File "/home/teuthworker/src/git.ceph.com_teuthology_3686f8793d626abcf5a0018da0a50786e41fed9d/teuthology/task/__init__.py", line 122, in __enter__
        self.setup()
      File "/home/teuthworker/src/github.com_ceph_ceph-c_1bc3c25246d3a6fbc360dc78d9b4b51200743391/qa/tasks/cbt.py", line 173, in setup
        self.install_dependencies()
      File "/home/teuthworker/src/github.com_ceph_ceph-c_1bc3c25246d3a6fbc360dc78d9b4b51200743391/qa/tasks/cbt.py", line 112, in install_dependencies
        self.first_mon.run(args=pip_install_cmd)
      File "/home/teuthworker/src/git.ceph.com_teuthology_3686f8793d626abcf5a0018da0a50786e41fed9d/teuthology/orchestra/remote.py", line 596, in run
        r = self._runner(client=self.ssh, name=self.shortname, **kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/home/teuthworker/src/git.ceph.com_teuthology_3686f8793d626abcf5a0018da0a50786e41fed9d/teuthology/orchestra/run.py", line 461, in run
        r.wait()
      File "/home/teuthworker/src/git.ceph.com_teuthology_3686f8793d626abcf5a0018da0a50786e41fed9d/teuthology/orchestra/run.py", line 161, in wait
        self._raise_for_status()
      File "/home/teuthworker/src/git.ceph.com_teuthology_3686f8793d626abcf5a0018da0a50786e41fed9d/teuthology/orchestra/run.py", line 181, in _raise_for_status
        raise CommandFailedError(
    teuthology.exceptions.CommandFailedError: Command failed on trial043 with status 1: 'python3 -m pip install -r /home/ubuntu/cephtest/cbt/requirements.txt'

Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
2026-05-27 08:45:53 -04:00
Patrick Donnelly
e9ef70baca
qa/distros: use consistent naming
Put the release name in the yaml name so it's easy to read from the job
description. "ubuntu_latest" means different things depending on the
Ceph release.

Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
2026-05-27 08:45:53 -04:00
Adam King
17cc03da91
qa/tasks/nvme_loop: fix nvme loop task for ubuntu noble
Compared to older distros, this one complains if
you include `-q hostnqn` in the nvme connect command,
saying "Failed to write to /dev/nvme-fabrics: Invalid argument".
Removing that argument gets passed that error and
doesn't seem to have any downsides

Signed-off-by: Adam King <adking@redhat.com>
2026-05-27 08:45:53 -04:00
Casey Bodley
04dd6dad27
qa/distros: add ubuntu_24.04 as supported container host
Signed-off-by: Casey Bodley <cbodley@redhat.com>
CEPH-BUILD-JOB: ceph-dev-pipeline
DISTROS: noble jammy centos9
ARCHS: x86_64
FLAVORS: default
2026-05-27 08:45:52 -04:00
Casey Bodley
cee6de8bf5
qa/distros: bump ubuntu_latest.yaml to 24.04
and add ubuntu_22.04.yaml back to distros/supported and
distros/supported-random-distro$

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-05-27 08:45:52 -04:00
Casey Bodley
5231fd6079
qa/distros: add all/ubuntu_24.04.yaml
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-05-27 08:45:52 -04:00
Patrick Donnelly
6532dd3c6f
qa/suites/rados/encoder: use random supported distro
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
2026-05-27 08:45:52 -04:00
Casey Bodley
8c317411af
qa/ceph-ansible: symlink supported-random-distro$
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-05-27 08:45:52 -04:00
Casey Bodley
0948f5a91c
qa/fs/fscrypt: symlink supported-random-distro$
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-05-27 08:45:52 -04:00
Casey Bodley
f987d23d5a
qa/cephmetrics: symlink supported-random-distro$
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-05-27 08:45:52 -04:00
Vallari Agrawal
9d8d2e21da
qa/suites/nvmeof: set beacon grace and connect panic
For teuthology clusters, set:
'''
ceph config set mon mon_nvmeofgw_beacon_grace 10
ceph config set mon nvmeof_mon_client_connect_panic 60
'''
Reason explained in https://tracker.ceph.com/issues/74660#note-12

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

Signed-off-by: Vallari Agrawal <vallari.agrawal@ibm.com>
2026-05-27 13:54:33 +05:30
Venky Shankar
bf37ceef23 qa/cephfs: install ceph-mgr-modules-standard for cephfs tests
Now that the ceph-mgr plugins are being separated into essential and
non-essential packages (always-on vs. optional), cephfs qa suite
requires the optional packages for ceph-mgr plugins which are not
always-on, but are being tested with fs suite. The good thing is, we
can install _all_ optional plugins using ceph-mgr-modules-standard
package instead of installing cherry-picked packages.

Signed-off-by: Venky Shankar <vshankar@redhat.com>
2026-05-27 09:55:05 +05:30
Patrick Donnelly
eb433c57ea
qa: ignore POOL_FULL for rbd tests exercising full pools
Fixes: https://tracker.ceph.com/issues/76586
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
2026-05-26 21:59:52 -04:00
Kamoltat (Junior) Sirivadhna
b95bdca832
Merge pull request #67551 from Ericmzhang/wip-improve-pg-autoscale
mgr: Fix autoscaling PG distribution
Reviewed-by: Kamoltat (Junior) Sirivadhna <ksirivad@redhat.com>
2026-05-26 18:04:43 -04:00
NitzanMordhai
2c3d140a4b
Merge pull request #61131 from NitzanMordhai/wip-nitzan-mgr-modules-perf-counts
mgr: Add per-module performance counters to mgr

Reviewed-by: Sridhar Seshasayee sridhar.seshasayee@ibm.com
2026-05-26 12:31:45 +03:00
Yuval Lifshitz
265b354a31
Merge pull request #68887 from ShreeJejurikar/wip-bucket-logging-requester-assumed-role
rgw/logging: use assumed-role ARN as Requester for STS requests
2026-05-26 07:58:58 +03:00
Jos Collin
eabd72ef05
qa: remove working directory in test_cephfs_mirror_sync_already_existing_snapshots
Signed-off-by: Jos Collin <jcollin@redhat.com>
2026-05-26 10:23:39 +05:30
Jos Collin
1ce2777172
qa: drop creating huge files in test_cephfs_mirror_cancel_sync
Fixes: https://tracker.ceph.com/issues/71701
Fixes: https://tracker.ceph.com/issues/72869
Signed-off-by: Jos Collin <jcollin@redhat.com>
2026-05-26 10:23:39 +05:30
ShreeJejurikar
6ff6a5572e qa/rgw/bucket-logging: configure STS for assume-role test
Set rgw sts key and enable rgw s3 auth use sts, both needed by
test_bucket_logging_requester_assumed_role. Mirrors the existing
settings in qa/suites/rgw/verify/overrides.yaml.

Signed-off-by: ShreeJejurikar <shreemj8@gmail.com>
2026-05-25 19:24:53 +05:30
Nitzan Mordechai
54d3b933ba workunits/mgr/test_mgr_modules_perf_counters: new test for enable\disable\perf counts
Simple test to enable \ disable and get counters dump
for checking perf counters.

Signed-off-by: Nitzan Mordechai <nmordech@redhat.com>
2026-05-25 07:48:06 +00:00
Jan Radon
591d8ac374
feat(rgw/kafka): add mTLS client certificate authentication for Kafka notifications
Add support for mutual TLS (mTLS) client certificate authentication
when publishing bucket notifications to Kafka brokers. RGW can now
present a client certificate and private key to authenticate with
brokers that require ssl.client.auth=required.
Changes:
- Add ssl-certificate-location, ssl-key-location, and ssl-key-password
  topic attributes for configuring client certificates
- Validate that ssl_certificate and ssl_key are provided together
- Include ssl_key_password in connection identity (hash/equality)
- Add kafka-security.sh script for generating broker and client TLS certs
- Add mTLS test (test_notification_kafka_security_ssl_mtls) using
  use_mtls=True flag on the existing SSL security path
- Update RGW notifications documentation with mTLS parameters

Fixes: http://tracker.ceph.com/issues/67427
Signed-off-by: Jan Radon <jan.fabian.radon@sap.com>
2026-05-23 09:05:37 +02:00
Patrick Donnelly
a1430973f2
qa/suites/upgrade: ignore osd in unknown state
The thrashosds task is occasionally restarting OSDs and mon/mgr log
warnings are wrongly flagging this as a problem.

Fixes: https://tracker.ceph.com/issues/76747
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
2026-05-22 09:38:26 -04:00
Casey Bodley
c5afb3a61d qa/rgw: ignore 'keytool: command for found' errors
this 'keytool' invocation was moved from qa/tasks/s3tests_java.py to
qa/tasks/rgw.py so that it would also cover the java checksum tests

but that means it runs for any rgw job with https enabled, even if it
doesn't install or use any java stuff. the 'keytool' command itself
comes from jdk packages which aren't installed by default

ignore errors from this command so that subsuites can use https without
installing java

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-05-21 10:32:28 -04:00
Patrick Donnelly
fec7a31a82
Merge PR #68907 into main
* refs/pull/68907/head:
	qa: ignore pg stuck peering

Reviewed-by: Yuri Weinstein <yweins@redhat.com>
2026-05-20 16:16:20 -04:00
Patrick Donnelly
c2f274b593
Merge PR #68896 into main
* refs/pull/68896/head:
	qa: ignore cephadm failed daemon warnings during thrashing

Reviewed-by: Yuri Weinstein <yweins@redhat.com>
2026-05-20 15:41:40 -04:00
Patrick Donnelly
96c3110ed3
Merge PR #68893 into main
* refs/pull/68893/head:
	qa: ignore expected OSD_ROOT_DOWN
	qa: ignore fs offline warning
	qa: add MDS_INSUFFICIENT_STANDBY to ignorelist
	qa/suites/upgrade: use common ignorelist

Reviewed-by: Laura Flores <lflores@redhat.com>
2026-05-20 15:38:17 -04:00
Patrick Donnelly
d206bc01c0
Merge PR #68897 into main
* refs/pull/68897/head:
	qa/suites/upgrade: ignore undersized PG during stress splits

Reviewed-by: Laura Flores <lflores@redhat.com>
2026-05-20 15:37:29 -04:00
Matthew N. Heler
888c323ad3 qa/rgw: test GCM encryption in existing crypt and multisite suites
Add an aes facet to the rgw/crypt and rgw/multisite suites so
teuthology runs them with both the default cipher (CBC) and with
rgw_crypt_sse_algorithm set to aes-256-gcm.

Signed-off-by: Matthew N. Heler <matthew.heler@hotmail.com>
2026-05-20 13:31:02 -05:00
Neeraj Pratap Singh
b066d4cd3a qa: fixing failures in TestShellOpts
We were seeing failures in TestShellOpts again
and again due the (newline added within the output)
output structure change with the cmd2 releases.
Now, we directly extract the final output of 'set editor'
command and use it, instead of traversing on complete output
through hardcoded indexes.This fix is better than earlier
hardcoded splitting/striping via indexes.

Fixes: https://tracker.ceph.com/issues/71795
Signed-off-by: Neeraj Pratap Singh <Neeraj.Pratap.Singh1@ibm.com>
2026-05-20 22:53:09 +05:30
Casey Bodley
d524934dd3 qa/openssl-keys: enable wildcard dns with subjectAltName
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-05-20 10:20:24 -04:00
Casey Bodley
249999df6f qa/rgw: RGWEndpoint.url() contains dns-name if configured
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-05-20 10:20:24 -04:00
Casey Bodley
0567c5049f qa/rgw: add s3control subsuite
i would prefer to run the s3control test coverage in rgw/verify, but it
depends on rgw_dns_name configuration and support for wildcard dns which
breaks most of the other rgw/verify test cases

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-05-20 10:20:24 -04:00
Casey Bodley
0cffed8623 qa/rgw: s3tests task configures account ids
s3tests for s3control and iam apis need to know the account id

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2026-05-20 10:20:24 -04:00
Jamie Pryde
8b94da2785 mon: Add health checker for deprecated EC plugins and techniques
We want to reduce the number of EC plugins and techniques we support
in order to focus dev and test effort on the ones that are most
useful.

We are deprecating the following plugins and techniques in Umbrella,
and dropping support for them in the V release:
* shec
* clay
* all non-reed_sol_van jerasure techniques

This commit adds a health checker to print a warning message if the cluster
is using any of the deprecated plugins/techniques and instructs the user
to migrate objects to a different pool.

Signed-off-by: Jamie Pryde <jamiepry@uk.ibm.com>
2026-05-20 11:31:53 +01:00
Jaya Prakash
ac6dd5571e qa: fix TEST_mon_features persistent feature checks in mon/misc.sh
The test reused the "tentacle" jq filter while validating
"nvmeof_beacon_diff", causing the comparison to fail. Also fix
the umbrella feature validation and update the expected
persistent feature count.

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

Signed-off-by: Jaya Prakash <jayaprakash@ibm.com>
2026-05-19 17:02:32 +00:00
Patrick Donnelly
86dd63ca5f
qa: ignore expected OSD_ROOT_DOWN
Fixes: https://tracker.ceph.com/issues/76620
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
2026-05-15 13:20:50 -04:00
Patrick Donnelly
14653b576a
qa: ignore fs offline warning
Dup of FS_DOWN.

Fixes: https://tracker.ceph.com/issues/76619
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
2026-05-15 13:17:34 -04:00
Patrick Donnelly
fbe46ce71b
qa: add MDS_INSUFFICIENT_STANDBY to ignorelist
This is expected when MDS are going up and down.

Fixes: https://tracker.ceph.com/issues/75419
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
2026-05-15 13:17:18 -04:00
Patrick Donnelly
b2ac7f6561
qa/suites/upgrade: use common ignorelist
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
2026-05-15 13:17:00 -04:00
Ronen Friedman
042f3cbe01 qa/crimson: disable test-coredump
This test is there to aid in debugging coredumps creation and collection.
It always fails (as it intentionally leaves the coredump in place for collection).
Disabling it in the suite to avoid noise, but leaving the test in place for manual
runs when needed.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
2026-05-15 10:32:13 +00:00
Ronen Friedman
307244b02c qa/crimson: add coredump generation test using ASOK assert
Trigger a crash on a Crimson OSD via the admin socket 'assert'
command and verify the OSD goes down and a coredump is produced.
Exercises the debug_asok_assert_abort path added in the companion
commit.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
2026-05-15 10:32:13 +00:00
Casey Bodley
31bc13e59c
Merge pull request #66064 from mheler/lifecycle_monitoring
rgw/lc: add per-bucket lifecycle performance monitoring

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
2026-05-14 11:14:30 -04:00
Patrick Donnelly
e7c553b087
qa: ignore pg stuck peering
Originally resolved in 9fa163df8f but the
changes were lost when upgrade suites were refreshed for the new release.

Fixes: https://tracker.ceph.com/issues/76599
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
2026-05-14 11:00:49 -04:00
Ronen Friedman
ee6c3638b1
Merge pull request #68725 from ronen-fr/wip-rf-cmem-crimson
crimson/osd,qa: support OSD memory size in the OSD and in QA suites

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Reviewed-by: Jose J Palacios-Perez <perezjos@uk.ibm.com>
2026-05-14 07:52:41 +03:00
Patrick Donnelly
322e78c1ce
qa/suites/upgrade: ignore undersized PG during stress splits
Fixes: https://tracker.ceph.com/issues/76585
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
2026-05-13 13:53:17 -04:00
Patrick Donnelly
ad6f20fde5
qa: ignore cephadm failed daemon warnings during thrashing
Fixes: https://tracker.ceph.com/issues/73079
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
2026-05-13 13:47:54 -04:00
Matan Breizman
4bb9f74989
Merge pull request #68844 from Matan-B/wip-matanb-java17-crimson-rgw
qa/suites/crimson-rados/rgw/sts/tasks/1-keycloak: dont install java-1…

Reviewed-by: Shraddha Agrawal <shraddhaag@ibm.com>
2026-05-13 11:25:23 +03:00
Venky Shankar
6f7b98a776 Merge PR #68128 into main
* refs/pull/68128/head:
	qa: Fix checksum calculation on empty directories
	qa: Add mirror test for snapshot with only dir
	tools/cephfs_mirror: Fix sync hang

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2026-05-12 20:56:29 +05:30
Venky Shankar
af7ea49897 Merge PR #68389 into main
* refs/pull/68389/head:
	qa: Handle TypeError in test_filelock

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2026-05-12 20:55:50 +05:30
Redouane Kachach
32711bb2e3
Merge pull request #68848 from rkachach/fix_issue_76511
qa/cephadm: start upgrade tests from tentacle instead of reef on main

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Adam King <adking@redhat.com>
2026-05-11 21:27:53 +02:00
Laura Flores
996b88a51a
Merge pull request #68365 from kamoltat/wip-ksirivad-fix-75418
qa/suites/upgrade: ignore PG_DAMAGED

Reviewed-by: Laura Flores <lflores@ibm.com>
2026-05-11 13:41:49 -05:00
Laura Flores
c4330d1ad2
Merge pull request #68326 from ljflores/wip-tracker-75763
qa/suites/rados/encoder: remove rocky from supported distros

Reviewed-by: Kamoltat Sirivadhna <ksirivad@redhat.com>
2026-05-11 13:33:33 -05:00
Laura Flores
2643ea61a5
Merge pull request #67715 from NitzanMordhai/wip-nitzan-is_pg_clean-hang-after-teardown
test/ceph-helpers: add timeout to ceph pg query

Reviewed-by: Radosław Zarzyński <rzarzyns@redhat.com>
2026-05-11 13:15:14 -05:00
Adam King
654553677c
qa/cephadm: start upgrade tests from tentacle instead of reef on main
Since main is what will become umbrella at this point

Signed-off-by: Adam King <adking@redhat.com>
(cherry picked from commit a137bccbf4)
2026-05-11 17:43:15 +02:00
Shubha Jain
b8e3155ef0
mgr/nfs: improve cluster info implementation and fix lint regressions
- Improve cluster info implementation
- Fix deployment type logic
- Resolve lint issues for check jobs

Signed-off-by: Shubha jain <SHUBHA.JAIN1@ibm.com>
2026-05-11 18:42:24 +05:30
Ronen Friedman
3dbbe15d00 Crimson/QA: add crimson-fixed-2-mem32g reduced-memory cluster variants
Add QA thrash cluster variants (crimson-fixed-2-mem32g) that set
crimson_memory to 32G or 16GB.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
2026-05-11 12:34:35 +00:00