Commit Graph

161884 Commits

Author SHA1 Message Date
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
mheler
412078d28e
Merge pull request #69051 from mheler/wip-rgw-http-reqs-lock
rgw/http: take reqs_lock when appending to reqs_change_state
2026-06-10 13:11:19 -05:00
mheler
913fc4c3a3
Merge pull request #68784 from mheler/wip-checksum-special-char
rgw/cloud-transition: url-encode rgwx-source-key metadata header
2026-06-10 13:10:51 -05:00
Ronen Friedman
2c6f5b10b0
Merge pull request #69256 from ronen-fr/wip-rf-stshards
crimson/osd: avoid calling get_sharded_store() for obj size

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Matan Breizman <mbreizma@redhat.com>
2026-06-10 18:31:58 +03:00
Matty Williams
8b35fcb47f
Merge pull request #68888 from MattyWilliams22/mw-peering-state-rollforward
osd: Fix condition for rolling forward pg log entries

Reviewed-by: Alex Ainscow <aainscow@uk.ibm.com>
Reviewed-by: Bill Scales <bill_scales@uk.ibm.com>
2026-06-10 16:20:23 +01:00
Afreen Misbah
e43640c7a9
Merge pull request #69276 from afreen23/worktree-umbrella-release-notes
doc: add Dashboard and Monitoring release notes for Umbrella

Reviewed-by: Afreen Misbah <afreen@ibm.com>
Reviewed-by: Naman Munet <nmunet@redhat.com>
2026-06-10 20:03:03 +05:30
David Galloway
9deb154db1
Merge pull request #68368 from kginonredhat/issue-75389-yaml-and-jinja2-deps-on-centos-distro
ceph.spec: declare PyYAML and Jinja2 Requires for cephadm RPM
2026-06-10 10:32:33 -04:00
Afreen Misbah
9c688d4ff8 doc: add Dashboard and Monitoring release notes for Umbrella
Signed-off-by: Afreen Misbah <afreen23@gmail.com>
2026-06-10 18:11:21 +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
Jaya Prakash
a87fad7e09
Merge pull request #64369 from aclamk/aclamk-bs-faster-start-more
bluestore: Faster allocation recovery - evolution

Reviewed-by: Jaya Prakash <jayaprakash@ibm.com>
2026-06-10 17:00:14 +05:30
Jaya Prakash
487551d1aa
Merge pull request #68981 from aclamk/aclamk-kv-divide-range
kv/KeyValueDB: New utility function util_divide_key_range

Reviewed-by: Jaya Prakash <jayaprakash@ibm.com>
2026-06-10 16:58:10 +05:30
Ilya Dryomov
50aa94d737
Merge pull request #69364 from eameh-LF/wip-doc-77191
doc/man: Remove stale EOL release names from deprecation notices

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
2026-06-10 12:00:45 +02:00
Ronen Friedman
631a405f2c crimson/osd: move get_max_object_size() to store level
is_offset_and_length_valid() called get_sharded_store() locally to
obtain the store-specific max_object_size. On alien cores (where
smp::count > store_shard_nums), the local store is inactive and the
call hits assert(shard_store.get_status() == true).

As the max object size is a store-specific property and not a
store-shard one, there is no reason to acquire the
store shard to obtain it. Instead -
a get_max_object_size() method is added to the Store interface.

Fixes: https://tracker.ceph.com/issues/76946
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
2026-06-10 06:42:05 +00:00
Nizamudeen A
8953492e9a
Merge pull request #68990 from rhcs-dashboard/carbon-filter
mgr/dashboard: carbonize table filters

Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Afreen Misbah <afreen@ibm.com>
Reviewed-by: Naman Munet <nmunet@redhat.com>
2026-06-10 10:32:26 +05:30
Kefu Chai
a0e3d4ca7d
Merge pull request #69374 from sunyuechi/wip-catch2-disconnected-guard
cmake: disable Catch2 tests when Catch2 is unavailable

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
2026-06-10 11:18:07 +08:00
Kefu Chai
9995e086f1
Merge pull request #69120 from tchaikov/wip-crimson-fix-move-rctx
crimson/osd: give each split child its own PeeringCtx

Reviewed-by: Aishwarya Mathuria <amathuri@redhat.com>
2026-06-10 09:52:35 +08:00
Sun Yuechi
4a7ac00601 cmake: disable Catch2 tests when Catch2 is unavailable
debhelper on noble passes -DFETCHCONTENT_FULLY_DISCONNECTED=ON, so CPM
cannot fetch Catch2 and silently skips it, leaving no Catch2 targets
behind and breaking the generate step. Fall back to WITH_CATCH2=OFF
with a warning instead.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
2026-06-10 08:17:59 +08:00
Adam Emerson
56253c4ae0
Merge pull request #61256 from irq0/wip/rgw-kms-cache
RGW SSE-KMS secrets cache

Reviewed-by: Adam Emerson <aemerson@redhat.com>
2026-06-09 16:22:35 -04:00
Adam Kupczyk
743fc29e76
Merge pull request #69085 from dheart-joe/wip-reconstruct-allocations
os/bluestore: fix reallocation and corruption when shared_blob key is missing/undecodable
2026-06-09 21:06:36 +02: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
Igor Fedotov
b89d8c4a11
Merge pull request #65275 from ifed01/wip-ifed-no-buffered-wal
os/bluestore: do not use buffered IO for BlueFS WAL.

Reviewed-by: Adam Kupczyk <akupczyk@ibm.com>
2026-06-09 18:51:59 +03:00
Matan Breizman
683121dbd4
Merge pull request #69211 from Matan-B/wip-matanb-seastore-conflict-counters
crimsn/os/seastore: separate reset accounting from transaction creation

Reviewed-by: Xuehan Xu <xuxuehan@qianxin.com>
2026-06-09 16:53:42 +03:00
dheart
98efc9c5f6 os/bluestore: prevent reallocation and corruption when shared_blob key is missing/undecodable
When the shared_blob key is missing or fails to decode,
it is necessary to scan the blob's pextents directly as the sole authoritative source
to verify allocated blocks and prevent double-allocation.

Signed-off-by: dheart <dheart_joe@163.com>
2026-06-09 21:27:14 +08:00
Casey Bodley
fbb7a5c9d6
Merge pull request #69233 from tchaikov/wip-rgw-posix-thread-last
rgw/posix: start the Inotify thread last, after the rest is built

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2026-06-09 09:16:15 -04:00
Emmanuel Ameh
dcad229395 doc/man: Remove stale EOL release names from deprecation notices
ceph.rst: "osd create" deprecation notice cited "the Luminous release"
(2017, EOL 2020). Update to a plain deprecation statement directing
users to the replacement command (osd new).

rbd.rst: cephx_require_signatures option deprecation cited "the Bobtail
release" (2013, EOL 2015) as context for why the option is deprecated.
Remove the EOL release name; retain the deprecation warning. Fix the
companion nocephx_require_signatures notice for consistency ("in a
future release" instead of "in the future").

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

Signed-off-by: Emmanuel Ameh <eameh@contractor.linuxfoundation.org>
2026-06-09 13:40:03 +01: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
eameh-LF
b1b71a940f
Merge pull request #69246 from eameh-LF/i77075
doc/cephadm: fix typo and missing quote in activate-existing-osds
2026-06-09 13:06:30 +01:00
Jaya Prakash
c2d25e08fe
Merge pull request #65792 from aclamk/aclamk-bs-onode-stall-fix
os/bluestore: Fix problem with onode cache causing stalls

Reviewed-by: Igor Fedotov <igor.fedotov@croit.io>
2026-06-09 17:23:16 +05:30
Jaya Prakash
4792491c6a
Merge pull request #68798 from aclamk/aclamk-bs-fix-stray-spanning-blobs
os/bluestore: Fix ExtentMap::reshard produce stray spanning blobs

Reviewed-by: Igor Fedotov <igor.fedotov@croit.io>
2026-06-09 17:22:57 +05:30
Matty Williams
073bd3092c doc: Update documentation to reflect new functionality
https://tracker.ceph.com/issues/74188
Signed-off-by: Matty Williams <Matty.Williams@ibm.com>
2026-06-09 09:46:07 +01: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
Matty Williams
6c02348342 osd: Hook up omap operations in EC pools
Add pool flag to determine if omap operations are supported in a pool.
- Currently disabled in EC pools (will later be enabled for Fast EC pools)
Require all osds to have umbrella or later release version to enable pool flag.
Change recovery reads to use journal updates.
Clear the journal for a new epoch.
Set omap_complete accurately before recovery.
Encode omap updates and add entry to journal.
Decode omap updates, apply updates to object store, then remove from journal.
Change omap reads in PrimaryLogPG to use PGBackend functions, including omap updates from journal.

Assisted-by: Bob
Used for debugging and copying patterns (e.g. implementing REPLACE type to match MODIFY).

Fixes: https://tracker.ceph.com/issues/74188
Signed-off-by: Matty Williams <Matty.Williams@ibm.com>
2026-06-09 09:46:07 +01:00
Matty Williams
a5f4a49020 osd: Allow for recovery of OMAP header and entries in EC pools
Add omap fields to read_request_t, read_result_t, ECSubRead and ECSubReadReply.
Read and write omap header and entries if !omap_complete.
Require omap_complete to finish recovery.

Fixes: https://tracker.ceph.com/issues/74244
Signed-off-by: Matty Williams <Matty.Williams@ibm.com>
2026-06-09 09:46:07 +01:00
Matty Williams
4caa76e637 doc: Write design document to explain the reasoning behind implementing this feature
Assisted-by: Bob
Used to create the first draft of the design document.

https://tracker.ceph.com/issues/74187
Signed-off-by: Matty Williams <Matty.Williams@ibm.com>
2026-06-09 09:46:07 +01:00
Matty Williams
df84974a39 osd: Introduce functions required for EC OMAP support
Introduced a "supports_omap" pool flag which is always enabled for Replicated pools and currently always disabled for EC pools.
Introduced wrappers around omap read operations in PGBackend to include updates from the journal in EC pools with optimisations enabled.
Introduced a function for encoding an EC_OMAP operation in the ObjectModDesc::Visitor class and a function for committing an operation in the Trimmer struct.

Signed-off-by: Matty Williams <Matty.Williams@ibm.com>
2026-06-09 09:46:07 +01:00
Yuval Lifshitz
e8e8e6fe6a
Merge pull request #69033 from kchheda3/fix-76729-notif-eventtime-race
rgw/notification: fix zero eventTime in bucket notifications on concurrent PUT race
2026-06-09 10:58:15 +03:00
Venky Shankar
aed8065a54 Merge PR #68413 into main
* refs/pull/68413/head:
	mds: fix shutdown hang when ephemeral pins active and max_mds is 0
	mds: fix crash in hash_into_rank_bucket() when max_mds is 0

Reviewed-by: Patrick Donnelly <pdonnell@ibm.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
2026-06-09 07:02:00 +05:30
Kefu Chai
6cc2fc7a45
Merge pull request #69165 from sunyuechi/wip-addcephtest-catch2-imported-target
cmake/AddCephTest: use namespaced Catch2 imported targets

Reviewed-by: Jesse F. Williamson <jfw@ibm.com>
2026-06-09 07:37:28 +08:00
Patrick Donnelly
288d5e3da1
Merge PR #69337 into main
* refs/pull/69337/head:
	doc: governance/csc: update email address

Reviewed-by: Joseph Mundackal <jmundackal@bloomberg.net>
Reviewed-by: Anthony D Atri <anthony.datri@gmail.com>
Reviewed-by: Patrick Donnelly <pdonnell@ibm.com>
2026-06-08 18:31:53 -04:00
Yehuda Sadeh Weinraub
5562362ad5 doc: governance/csc: update email address
yehuda@redhat.com -> yehuda@ui.com

Signed-off-by: Yehuda Sadeh Weinraub <yehuda@ui.com>
2026-06-08 14:05:26 -07: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
Zack Cerza
11667f49a5
Merge pull request #69315 from sunyuechi/wip-sccache-riscv64
Dockerfile.build: bump sccache and fetch it on riscv64
2026-06-08 12:37:07 -06: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
Adam Kupczyk
0970b2e1ac os/bluestore: Add printout to CBT's recovery-compare command
1) recovery-compare prints on stdout
2) gracefully rejects comparing when multithreaded not enabled

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
2026-06-08 17:04:29 +00:00
Adam Kupczyk
4138fcf7b4 os/bluestore: Add bluestore_debug_fast_recovery_compare_chance
The setting is used for testing purposes only.
It allows to force compare if required,
or set chance to use in teuthology thrash tests.

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
2026-06-08 17:04:29 +00:00
Adam Kupczyk
21483ba2a9 os/bluestore: Make OnodeScan use just one Blob
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
2026-06-08 17:04:29 +00:00
Adam Kupczyk
9c2c977260 os/bluestore: Tell OnodeScan to skip decoding checksums
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
2026-06-08 17:04:29 +00:00
Adam Kupczyk
a2e33b76e7 os/bluestore: Adapt multithread recovery
Adapt multithread recovery to modified ExtentDecoder interface.

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
2026-06-08 17:04:29 +00:00