]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/log
ceph.git
5 days agocrimson/osd: fix PGBackend::remove() to return ENOENT on no-op deletes 69415/head
Ronen Friedman [Thu, 11 Jun 2026 11:33:42 +0000 (11:33 +0000)]
crimson/osd: fix PGBackend::remove() to return ENOENT on no-op deletes

PGBackend::remove() was returning success when asked to delete a
non-existent object or an already-whiteout object that must remain
a whiteout. The classic OSD returns -ENOENT in both cases. Fix both
paths to return enoent, and remove the duplicate !os.exists check.

Fixes: https://tracker.ceph.com/issues/76529
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
5 days agoMerge pull request #69391 from guits/fix-raw-activate
Guillaume Abrioux [Thu, 11 Jun 2026 07:34:49 +0000 (09:34 +0200)]
Merge pull request #69391 from guits/fix-raw-activate

ceph-volume: fix raw activate when device path is stale

5 days agoMerge pull request #69375 from zdover23/2026-06-10-organizationmap-update
Zac Dover [Thu, 11 Jun 2026 06:32:20 +0000 (16:32 +1000)]
Merge pull request #69375 from zdover23/2026-06-10-organizationmap-update

organizationmap: add Zac Dover (Clyso)

Reviewed-by: Dan van der Ster <dan.vanderster@clyso.com>
5 days agoMerge PR #69404 into main
Patrick Donnelly [Thu, 11 Jun 2026 01:58:01 +0000 (21:58 -0400)]
Merge PR #69404 into main

* refs/pull/69404/head:
.github/milestone: add umbrella

Reviewed-by: Yuri Weinstein <yweins@redhat.com>
5 days agoMerge pull request #60492 from anthonyeleven/more-pgs
Anthony D'Atri [Thu, 11 Jun 2026 00:24:36 +0000 (20:24 -0400)]
Merge pull request #60492 from anthonyeleven/more-pgs

src/common/options: Increase autoscaler PG target and overload values

5 days ago.github/milestone: add umbrella 69404/head
Patrick Donnelly [Wed, 10 Jun 2026 22:25:16 +0000 (18:25 -0400)]
.github/milestone: add umbrella

Fixes: https://tracker.ceph.com/issues/77308
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
5 days agoMerge PR #69399 into main v21.3.0
Patrick Donnelly [Wed, 10 Jun 2026 20:35:13 +0000 (16:35 -0400)]
Merge PR #69399 into main

* refs/pull/69399/head:
doc/dev/release-checklists: reset to skeleton

Reviewed-by: Anthony D Atri <anthony.datri@gmail.com>
5 days agodoc/dev/release-checklists: reset to skeleton 69399/head
Patrick Donnelly [Wed, 10 Jun 2026 18:36:59 +0000 (14:36 -0400)]
doc/dev/release-checklists: reset to skeleton

Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
5 days agoMerge PR #66726 into main v21.0.1
Patrick Donnelly [Wed, 10 Jun 2026 18:30:59 +0000 (14:30 -0400)]
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>
5 days agoMerge pull request #69051 from mheler/wip-rgw-http-reqs-lock
mheler [Wed, 10 Jun 2026 18:11:19 +0000 (13:11 -0500)]
Merge pull request #69051 from mheler/wip-rgw-http-reqs-lock

rgw/http: take reqs_lock when appending to reqs_change_state

5 days agoMerge pull request #68784 from mheler/wip-checksum-special-char
mheler [Wed, 10 Jun 2026 18:10:51 +0000 (13:10 -0500)]
Merge pull request #68784 from mheler/wip-checksum-special-char

rgw/cloud-transition: url-encode rgwx-source-key metadata header

5 days agoMerge pull request #69256 from ronen-fr/wip-rf-stshards
Ronen Friedman [Wed, 10 Jun 2026 15:31:58 +0000 (18:31 +0300)]
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>
5 days agoMerge pull request #68888 from MattyWilliams22/mw-peering-state-rollforward
Matty Williams [Wed, 10 Jun 2026 15:20:23 +0000 (16:20 +0100)]
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>
5 days agoMerge pull request #69276 from afreen23/worktree-umbrella-release-notes
Afreen Misbah [Wed, 10 Jun 2026 14:33:03 +0000 (20:03 +0530)]
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>
5 days agoMerge pull request #68368 from kginonredhat/issue-75389-yaml-and-jinja2-deps-on-cento...
David Galloway [Wed, 10 Jun 2026 14:32:33 +0000 (10:32 -0400)]
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

5 days agodoc: add Dashboard and Monitoring release notes for Umbrella 69276/head
Afreen Misbah [Mon, 25 May 2026 23:10:46 +0000 (04:40 +0530)]
doc: add Dashboard and Monitoring release notes for Umbrella

Signed-off-by: Afreen Misbah <afreen23@gmail.com>
6 days agoMerge pull request #68984 from Jayaprakash-ibm/wip-faster-alloc-recovery-testing
Jaya Prakash [Wed, 10 Jun 2026 11:31:07 +0000 (17:01 +0530)]
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>
6 days agoMerge pull request #64369 from aclamk/aclamk-bs-faster-start-more
Jaya Prakash [Wed, 10 Jun 2026 11:30:14 +0000 (17:00 +0530)]
Merge pull request #64369 from aclamk/aclamk-bs-faster-start-more

bluestore: Faster allocation recovery - evolution

Reviewed-by: Jaya Prakash <jayaprakash@ibm.com>
6 days agoMerge pull request #68981 from aclamk/aclamk-kv-divide-range
Jaya Prakash [Wed, 10 Jun 2026 11:28:10 +0000 (16:58 +0530)]
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>
6 days agoceph-volume: fix raw activate when device path is stale 69391/head
Guillaume Abrioux [Wed, 10 Jun 2026 11:22:14 +0000 (13:22 +0200)]
ceph-volume: fix raw activate when device path is stale

This changes unlink_bs_symlinks to use os.path.lexists instead
of os.path.exists. It can happen that devices get renumbered,
in that case, the OSD symlink still exists but its target device
is gone which means os.path.exists returns False, so the symlink
is never cleaned up and ceph-volume activate can fail later.

Fixes: https://tracker.ceph.com/issues/77295
Signed-off-by: Guillaume Abrioux <gabrioux@ibm.com>
6 days agoMerge pull request #69364 from eameh-LF/wip-doc-77191
Ilya Dryomov [Wed, 10 Jun 2026 10:00:45 +0000 (12:00 +0200)]
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>
6 days agocrimson/osd: move get_max_object_size() to store level 69256/head
Ronen Friedman [Wed, 3 Jun 2026 05:40:25 +0000 (05:40 +0000)]
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>
6 days agodocs: organizationmap: add Zac Dover (Clyso) 69375/head
Zac Dover [Wed, 10 Jun 2026 01:00:18 +0000 (11:00 +1000)]
docs: organizationmap: add Zac Dover (Clyso)

Add Zac Dover (Clyso) to .organizationmap.

Signed-off-by: Zac Dover <zac.dover@clyso.com>
6 days agoMerge pull request #68990 from rhcs-dashboard/carbon-filter
Nizamudeen A [Wed, 10 Jun 2026 05:02:26 +0000 (10:32 +0530)]
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>
6 days agoMerge pull request #69374 from sunyuechi/wip-catch2-disconnected-guard
Kefu Chai [Wed, 10 Jun 2026 03:18:07 +0000 (11:18 +0800)]
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>
6 days agoMerge pull request #69120 from tchaikov/wip-crimson-fix-move-rctx
Kefu Chai [Wed, 10 Jun 2026 01:52:35 +0000 (09:52 +0800)]
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>
6 days agocmake: disable Catch2 tests when Catch2 is unavailable 69374/head
Sun Yuechi [Wed, 10 Jun 2026 00:13:53 +0000 (08:13 +0800)]
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>
6 days agoqa/workunits/mon: Update pg_autoscaler.sh in conjunction with https://github.com... 60492/head
Anthony D'Atri [Sat, 30 May 2026 01:36:48 +0000 (21:36 -0400)]
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>
6 days agoMerge pull request #61256 from irq0/wip/rgw-kms-cache
Adam Emerson [Tue, 9 Jun 2026 20:22:35 +0000 (16:22 -0400)]
Merge pull request #61256 from irq0/wip/rgw-kms-cache

RGW SSE-KMS secrets cache

Reviewed-by: Adam Emerson <aemerson@redhat.com>
6 days agoMerge pull request #69085 from dheart-joe/wip-reconstruct-allocations
Adam Kupczyk [Tue, 9 Jun 2026 19:06:36 +0000 (21:06 +0200)]
Merge pull request #69085 from dheart-joe/wip-reconstruct-allocations

os/bluestore: fix reallocation and corruption when shared_blob key is missing/undecodable

6 days agoMerge pull request #68837 from NitzanMordhai/wip-nitzan-cephtool-singleton-bluestore...
Laura Flores [Tue, 9 Jun 2026 18:59:59 +0000 (13:59 -0500)]
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>
6 days agoMerge pull request #68825 from phlogistonjohn/jjm-smb-ctl-tool-fe
John Mulligan [Tue, 9 Jun 2026 18:21:32 +0000 (14:21 -0400)]
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>
6 days agosrc/common/options: Increase autoscaler PG target and overload values
Anthony D'Atri [Fri, 25 Oct 2024 19:45:27 +0000 (15:45 -0400)]
src/common/options: Increase autoscaler PG target and overload values

Signed-off-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
6 days agoMerge pull request #65275 from ifed01/wip-ifed-no-buffered-wal
Igor Fedotov [Tue, 9 Jun 2026 15:51:59 +0000 (18:51 +0300)]
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>
6 days agoMerge pull request #69211 from Matan-B/wip-matanb-seastore-conflict-counters
Matan Breizman [Tue, 9 Jun 2026 13:53:42 +0000 (16:53 +0300)]
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>
6 days agoos/bluestore: prevent reallocation and corruption when shared_blob key is missing... 69085/head
dheart [Tue, 9 Jun 2026 13:27:14 +0000 (21:27 +0800)]
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>
6 days agoMerge pull request #69233 from tchaikov/wip-rgw-posix-thread-last
Casey Bodley [Tue, 9 Jun 2026 13:16:15 +0000 (09:16 -0400)]
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>
6 days agodoc/man: Remove stale EOL release names from deprecation notices 69364/head
Emmanuel Ameh [Tue, 9 Jun 2026 12:40:03 +0000 (13:40 +0100)]
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>
6 days agoMerge pull request #69253 from cbodley/wip-76725
Casey Bodley [Tue, 9 Jun 2026 12:24:19 +0000 (08:24 -0400)]
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>
7 days agoMerge pull request #69246 from eameh-LF/i77075
eameh-LF [Tue, 9 Jun 2026 12:06:30 +0000 (13:06 +0100)]
Merge pull request #69246 from eameh-LF/i77075

doc/cephadm: fix typo and missing quote in activate-existing-osds

7 days agoMerge pull request #65792 from aclamk/aclamk-bs-onode-stall-fix
Jaya Prakash [Tue, 9 Jun 2026 11:53:16 +0000 (17:23 +0530)]
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>
7 days agoMerge pull request #68798 from aclamk/aclamk-bs-fix-stray-spanning-blobs
Jaya Prakash [Tue, 9 Jun 2026 11:52:57 +0000 (17:22 +0530)]
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>
7 days agodoc: Update documentation to reflect new functionality 66726/head
Matty Williams [Mon, 23 Feb 2026 16:32:13 +0000 (16:32 +0000)]
doc: Update documentation to reflect new functionality

https://tracker.ceph.com/issues/74188
Signed-off-by: Matty Williams <Matty.Williams@ibm.com>
7 days agotest: Add integration tests for EC Omap operations and recovery
Matty Williams [Tue, 23 Dec 2025 13:42:37 +0000 (13:42 +0000)]
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>
7 days agoosd: Hook up omap operations in EC pools
Matty Williams [Mon, 18 May 2026 09:09:32 +0000 (10:09 +0100)]
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>
7 days agoosd: Allow for recovery of OMAP header and entries in EC pools
Matty Williams [Tue, 12 May 2026 15:11:17 +0000 (16:11 +0100)]
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>
7 days agodoc: Write design document to explain the reasoning behind implementing this feature
Matty Williams [Tue, 24 Feb 2026 15:16:28 +0000 (15:16 +0000)]
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>
7 days agoosd: Introduce functions required for EC OMAP support
Matty Williams [Fri, 12 Dec 2025 11:21:10 +0000 (11:21 +0000)]
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>
7 days agoMerge pull request #69033 from kchheda3/fix-76729-notif-eventtime-race
Yuval Lifshitz [Tue, 9 Jun 2026 07:58:15 +0000 (10:58 +0300)]
Merge pull request #69033 from kchheda3/fix-76729-notif-eventtime-race

rgw/notification: fix zero eventTime in bucket notifications on concurrent PUT race

7 days agoMerge PR #68413 into main
Venky Shankar [Tue, 9 Jun 2026 01:32:00 +0000 (07:02 +0530)]
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>
7 days agoMerge pull request #69165 from sunyuechi/wip-addcephtest-catch2-imported-target
Kefu Chai [Mon, 8 Jun 2026 23:37:28 +0000 (07:37 +0800)]
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>
7 days agoMerge PR #69337 into main
Patrick Donnelly [Mon, 8 Jun 2026 22:31:53 +0000 (18:31 -0400)]
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>
7 days agodoc: governance/csc: update email address 69337/head
Yehuda Sadeh Weinraub [Mon, 8 Jun 2026 18:38:26 +0000 (11:38 -0700)]
doc: governance/csc: update email address

yehuda@redhat.com -> yehuda@ui.com

Signed-off-by: Yehuda Sadeh Weinraub <yehuda@ui.com>
7 days agoMerge pull request #69176 from Ericmzhang/wip-fix-pg_autoscaler-tests
Ericmzhang [Mon, 8 Jun 2026 19:12:11 +0000 (12:12 -0700)]
Merge pull request #69176 from Ericmzhang/wip-fix-pg_autoscaler-tests

qa: Fix pg autoscaler tests

7 days agoMerge pull request #69315 from sunyuechi/wip-sccache-riscv64
Zack Cerza [Mon, 8 Jun 2026 18:37:07 +0000 (12:37 -0600)]
Merge pull request #69315 from sunyuechi/wip-sccache-riscv64

Dockerfile.build: bump sccache and fetch it on riscv64

7 days agoqa/suites: add faster allocation recovery thrashing suite 68984/head
Jaya Prakash [Mon, 18 May 2026 19:57:50 +0000 (19:57 +0000)]
qa/suites: add faster allocation recovery thrashing suite

Signed-off-by: Jaya Prakash <jayaprakash@ibm.com>
7 days agoqa/workunits: add EC fio workload for allocation recovery testing
Jaya Prakash [Mon, 18 May 2026 19:57:33 +0000 (19:57 +0000)]
qa/workunits: add EC fio workload for allocation recovery testing

Signed-off-by: Jaya Prakash <jayaprakash@ibm.com>
7 days agoos/bluestore: Add printout to CBT's recovery-compare command 64369/head
Adam Kupczyk [Fri, 29 May 2026 11:16:39 +0000 (11:16 +0000)]
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>
7 days agoos/bluestore: Add bluestore_debug_fast_recovery_compare_chance
Adam Kupczyk [Tue, 19 May 2026 19:36:37 +0000 (19:36 +0000)]
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>
7 days agoos/bluestore: Make OnodeScan use just one Blob
Adam Kupczyk [Mon, 7 Jul 2025 10:16:43 +0000 (10:16 +0000)]
os/bluestore: Make OnodeScan use just one Blob

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
7 days agoos/bluestore: Tell OnodeScan to skip decoding checksums
Adam Kupczyk [Mon, 7 Jul 2025 10:02:01 +0000 (10:02 +0000)]
os/bluestore: Tell OnodeScan to skip decoding checksums

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
7 days agoos/bluestore: Adapt multithread recovery
Adam Kupczyk [Mon, 7 Jul 2025 07:24:42 +0000 (07:24 +0000)]
os/bluestore: Adapt multithread recovery

Adapt multithread recovery to modified ExtentDecoder interface.

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
7 days agoos/bluestore: Multithreaded allocation recovery
Adam Kupczyk [Thu, 3 Jul 2025 08:04:01 +0000 (08:04 +0000)]
os/bluestore: Multithreaded allocation recovery

Added multithreading processing for allocation recovery.
Added new config "bluestore_allocation_recovery_threads".

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
7 days agoos/bluestore: Add "recovery-compare" action to CBT
Adam Kupczyk [Tue, 1 Jul 2025 13:25:38 +0000 (13:25 +0000)]
os/bluestore: Add "recovery-compare" action to CBT

New command compares 2 recovery modes:
 - legacy
 - new multithreaded
The command is hidden - it does not show in help.
Its role is devel & test only.

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
7 days agoos/bluestore: Add new onode recovery method
Adam Kupczyk [Tue, 1 Jul 2025 13:47:14 +0000 (13:47 +0000)]
os/bluestore: Add new onode recovery method

Added read_allocation_from_onodes_mt function
  (originally copied from read_allocation_from_onodes).
Added Decoder_AllocationsAndStatFS class
  (originally copied from ExtentDecoderpartial).

There are significant differences from originals:
- shared blobs are not scanned at all
- to not account allocations more than once,
  collisions are detected on SimpleBitmap level;
  only the first onode referencing shared blob will mark allocation
- Blobs are not preserved
- instead we remember only if blob or spanning blob was compressed

The underlying logic is make recovery faster and prepare for
multithread refactor.

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
7 days agoos/bluestore: Tiny refactor
Adam Kupczyk [Tue, 1 Jul 2025 11:54:01 +0000 (11:54 +0000)]
os/bluestore: Tiny refactor

Moved statfs initialization that is done after onode recovery
from read_allocation_from_onodes()
to   reconstruct_allocations().

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
7 days agoos/bluestore: Add set_atomic and clr_atomic to SimpleBitmap
Adam Kupczyk [Tue, 1 Jul 2025 11:48:45 +0000 (11:48 +0000)]
os/bluestore: Add set_atomic and clr_atomic to SimpleBitmap

The functions are analogs of set and clr respectively that allow to multithread use.
In addition return value is a count of set/cleared bits.

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
7 days agoos/bluestore: Rework on decoding
Adam Kupczyk [Fri, 4 Jul 2025 16:28:16 +0000 (16:28 +0000)]
os/bluestore: Rework on decoding

Refactored ExtentDecoder.
Introduced decode_create_blob method to it.
Converted bluestore_blob_t::decode and Blob::decode methods into templates.
Created clear example path how to specialize these and other decoders.

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
7 days agoMerge pull request #69212 from shraddhaag/wip-shraddhaag-enable-debian-crimson-builds
Shraddha Agrawal [Mon, 8 Jun 2026 14:54:47 +0000 (20:24 +0530)]
Merge pull request #69212 from shraddhaag/wip-shraddhaag-enable-debian-crimson-builds

debian: enable crimson packages

7 days agoMerge pull request #66746 from datdenkikniet/prologue-not-epilogue
Kefu Chai [Mon, 8 Jun 2026 14:11:05 +0000 (22:11 +0800)]
Merge pull request #66746 from datdenkikniet/prologue-not-epilogue

msg/async/frames_v2: doc: FRAME_EARLY_DATA_COMPRESSED is used in prologue, not epilogue

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
7 days agoMerge pull request #69188 from sunyuechi/zstd-system-include
Kefu Chai [Mon, 8 Jun 2026 13:34:54 +0000 (21:34 +0800)]
Merge pull request #69188 from sunyuechi/zstd-system-include

compressor/zstd: include <zstd.h> instead of the bundled path

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
8 days agomds: fix shutdown hang when ephemeral pins active and max_mds is 0 68413/head
chungfengz [Thu, 16 Apr 2026 06:54:16 +0000 (06:54 +0000)]
mds: fix shutdown hang when ephemeral pins active and max_mds is 0

During shutdown, `ceph fs set <fs> down true` sets max_mds to 0 before
the MDS daemons have finished exporting their subtrees.  shutdown_pass()
iterates over auth subtrees and skips any dir whose inode is
ephemerally pinned, expecting handle_export_pins() to re-place them.
However, handle_export_pins() calls hash_into_rank_bucket() which (after
the companion fix) now returns MDS_RANK_NONE when max_mds == 0.  With
no valid target rank the export is never scheduled, so the ephemerally-
pinned dirs are skipped by shutdown_pass() indefinitely and the daemon
loops.

Fixes: https://tracker.ceph.com/issues/76059
Signed-off-by: chungfengz <chungfengz@synology.com>
8 days agomds: fix crash in hash_into_rank_bucket() when max_mds is 0
chungfengz [Thu, 16 Apr 2026 06:53:51 +0000 (06:53 +0000)]
mds: fix crash in hash_into_rank_bucket() when max_mds is 0

When a CephFS cluster is paused (e.g. via `ceph fs set <fs> down true`
or `ceph fs pause`) the MDS map's max_mds is set to 0.  Any subsequent
call to hash_into_rank_bucket() with max_mds == 0 triggers a crash:
the jump-consistent-hash loop never executes (j starts at 0, condition
j < max_mds is immediately false), leaving b = -1, so the final
assert(result >= 0 && result < max_mds) aborts the daemon.

Fixes: https://tracker.ceph.com/issues/76059
Signed-off-by: chungfengz <chungfengz@synology.com>
8 days agoMerge pull request #56634 from neesingh-rh/wip-64064
Venky Shankar [Mon, 8 Jun 2026 09:03:10 +0000 (14:33 +0530)]
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>
8 days agoMerge PR #68793 into main
Venky Shankar [Mon, 8 Jun 2026 08:53:57 +0000 (14:23 +0530)]
Merge PR #68793 into main

* refs/pull/68793/head:
mds: prevent CDir omap commit with empty updates/removals/header

Reviewed-by: Igor Golikov <igolikov@ibm.com>
Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
8 days agoMerge pull request #69153 from fultheim/rbm-capacity-enforcement
Matan Breizman [Mon, 8 Jun 2026 08:13:54 +0000 (11:13 +0300)]
Merge pull request #69153 from fultheim/rbm-capacity-enforcement

crimson/os/seastore: enforce capacity in RBMCleaner::try_reserve_projected_usage

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
8 days agomgr/dashboard: carbonize table filters 68990/head
Nizamudeen A [Tue, 19 May 2026 04:40:08 +0000 (10:10 +0530)]
mgr/dashboard: carbonize table filters

Fixes: https://tracker.ceph.com/issues/76687
Signed-off-by: Nizamudeen A <nia@redhat.com>
8 days agoMerge pull request #69248 from xxhdx1985126/wip-seastore-get_child_sync-fix
Matan Breizman [Mon, 8 Jun 2026 07:43:56 +0000 (10:43 +0300)]
Merge pull request #69248 from xxhdx1985126/wip-seastore-get_child_sync-fix

crimson/os/seastore/linked_tree_node: get_child_sync should also get transactional views of the extent

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
Reviewed-by: Matan Breizman <mbreizma@redhat.com>
8 days agoMerge PR #66492 into main
Venky Shankar [Mon, 8 Jun 2026 07:27:10 +0000 (12:57 +0530)]
Merge PR #66492 into main

* refs/pull/66492/head:
src/pybind/mgr: handle json-pretty for perf stats

Reviewed-by: Jos Collin <jcollin@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
8 days agodebian: enable crimson packages 69212/head
Shraddha Agrawal [Mon, 1 Jun 2026 10:58:48 +0000 (16:28 +0530)]
debian: enable crimson packages

This commit enables ceph-osd-crimson and ceph-osd-crimson-dbg
packages for debian builds which have gcc version 13 or above.
This is done as a first step to add noble to supported distors
for crimson.

Signed-off-by: Shraddha Agrawal <shraddha.agrawal000@gmail.com>
8 days agoMerge pull request #68094 from rhcs-dashboard/cleanup-log
Nizamudeen A [Mon, 8 Jun 2026 05:25:57 +0000 (10:55 +0530)]
Merge pull request #68094 from rhcs-dashboard/cleanup-log

mgr/prometheus: cleanup the smb share processing logs

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
8 days agoMerge pull request #69317 from tchaikov/wip-mgr-dashboard-immutable-cache
Nizamudeen A [Mon, 8 Jun 2026 05:23:20 +0000 (10:53 +0530)]
Merge pull request #69317 from tchaikov/wip-mgr-dashboard-immutable-cache

mgr/dashboard: don't mutate the cached osd_map in CephService

Reviewed-by: Nizamudeen A <nia@redhat.com>
8 days agoMerge pull request #65950 from joscollin/wip-71701-near-full
Venky Shankar [Mon, 8 Jun 2026 04:35:28 +0000 (10:05 +0530)]
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>
8 days agoMerge pull request #67371 from greenx/main
Kefu Chai [Mon, 8 Jun 2026 01:33:54 +0000 (09:33 +0800)]
Merge pull request #67371 from greenx/main

logrotate: send SIGHUP to ceph-exporter on log rotation

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
9 days agomgr/dashboard: don't mutate the cached osd_map in CephService 69317/head
Kefu Chai [Sun, 7 Jun 2026 08:58:20 +0000 (16:58 +0800)]
mgr/dashboard: don't mutate the cached osd_map in CephService

test_pool_list fails intermittently:

  Traceback (most recent call last):
    File "qa/tasks/mgr/dashboard/test_pool.py", line 182, in test_pool_list
      self.assertNotIn('pg_status', pool)
  AssertionError: 'pg_status' unexpectedly found in
    {'pool': 1, 'pool_name': 'rbd', ..., 'pg_status': {'active+clean': 1}, ...}

mgr.get('osd_map') defaults to mutable=False, so cacheable_get_python()
returns the mgr's shared cached object rather than a copy.
get_pool_list_with_stats() writes pool['pg_status'] and pool['stats']
into those cached dicts, and get_erasure_code_profiles() sets ecp['name']
and rewrites ecp['k']/['m'] to int. The writes outlive the request, so
once a stats=true call has run, GET /api/pool with stats=false still
returns pools carrying pg_status and the assertion above fails. It only
triggers while the cache stays valid between the two requests, hence the
flakiness.

Audited the other dashboard readers of cached mgr.get() keys: these two
are the only sites that mutate the result; the rest only read, and
health.py already copies its osd_map before editing.

Copy the dicts before stamping them; the cache stays clean.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
10 days agoDockerfile.build: fetch sccache on riscv64 69315/head
Sun Yuechi [Sat, 6 Jun 2026 09:44:57 +0000 (17:44 +0800)]
Dockerfile.build: fetch sccache on riscv64

sccache ships a riscv64 release artifact since v0.13.0, published under the
riscv64gc target triple. Map uname -m "riscv64" to that asset name so the
download resolves on riscv64 instead of being skipped.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
10 days agoDockerfile.build: bump sccache to v0.15.0
Sun Yuechi [Sat, 6 Jun 2026 09:44:33 +0000 (17:44 +0800)]
Dockerfile.build: bump sccache to v0.15.0

The releases since v0.8.2 add caching for C++20 modules, assembly, and C
preprocessor output, plus broader GCC/MSVC flag handling. They also avoid
double-caching when ccache is on PATH and carry assorted cache-correctness
and storage-backend fixes.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
10 days agocrimson/os/seastore/lba,btree: better debug logs 69248/head
Xuehan Xu [Wed, 3 Jun 2026 02:55:02 +0000 (10:55 +0800)]
crimson/os/seastore/lba,btree: better debug logs

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
10 days agocrimson/os/seastore/btree: correct the sync search of leaf nodes to do
Xuehan Xu [Wed, 3 Jun 2026 02:09:12 +0000 (10:09 +0800)]
crimson/os/seastore/btree: correct the sync search of leaf nodes to do
lower_bound instead of upper_bound

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
10 days agocrimson/os/seastore/linked_tree_node: get_child_sync should also get
Xuehan Xu [Tue, 2 Jun 2026 15:29:15 +0000 (23:29 +0800)]
crimson/os/seastore/linked_tree_node: get_child_sync should also get
transactional views of the extent

Fixes: https://tracker.ceph.com/issues/76945
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
10 days agoMerge pull request #69172 from cbodley/wip-76997
Casey Bodley [Fri, 5 Jun 2026 15:03:50 +0000 (11:03 -0400)]
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>
10 days agoMerge pull request #68977 from rhcs-dashboard/76652-Convert-add-storage-wizard-to... main_base_6.5.26
Afreen Misbah [Fri, 5 Jun 2026 13:56:42 +0000 (19:26 +0530)]
Merge pull request #68977 from rhcs-dashboard/76652-Convert-add-storage-wizard-to-tearsheet

mgr/dashboard: Converting add storage wizard into tearsheet

Reviewed-by: Afreen Misbah <afreen@ibm.com>
10 days agoMerge PR #69118 into main
Venky Shankar [Fri, 5 Jun 2026 13:19:56 +0000 (18:49 +0530)]
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>
11 days agoMerge pull request #69295 from tchaikov/wip-c-ares
Kefu Chai [Fri, 5 Jun 2026 10:45:08 +0000 (18:45 +0800)]
Merge pull request #69295 from tchaikov/wip-c-ares

ceph.spec.in: only require c-ares >= 1.28 on el10+

Reviewed-by: Kautilya Tripathi <kautilya.tripathi@ibm.com>
11 days agoMerge pull request #69263 from JonBailey1993/ec_direct_reads_docs
Ilya Dryomov [Fri, 5 Jun 2026 08:39:05 +0000 (10:39 +0200)]
Merge pull request #69263 from JonBailey1993/ec_direct_reads_docs

doc: Document erasure-coded pool direct reads for balance flag

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
11 days agoMerge pull request #69040 from rhcs-dashboard/76746-combining-quorum-tables-data...
Afreen Misbah [Fri, 5 Jun 2026 08:23:37 +0000 (13:53 +0530)]
Merge pull request #69040 from rhcs-dashboard/76746-combining-quorum-tables-data-on-monitors-page

mgr/dashboard: Combining Quorum tables data on Monitors page

Reviewed-by: Afreen Misbah <afreen@ibm.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pedro Gonzalez Gomez <pegonzal@redhat.com>
11 days agoMerge pull request #68910 from sseshasa/wip-osd-perf-counters-for-durability-score
Sridhar Seshasayee [Fri, 5 Jun 2026 08:20:14 +0000 (13:50 +0530)]
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>
11 days agoMerge pull request #67901 from aadhikale/wip-75619_progress_module_gives_value_error_...
Nizamudeen A [Fri, 5 Jun 2026 07:07:30 +0000 (12:37 +0530)]
Merge pull request #67901 from aadhikale/wip-75619_progress_module_gives_value_error_for_metadata

dashboard: use metadata = event.get('refs', {}) instead of dict(event…

Reviewed-by: Pedro Gonzalez Gomez <pegonzal@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Naman Munet <nmunet@redhat.com>
11 days agoMerge pull request #69240 from amathuria/wip-amat-crimson-debug-snaptrim-timeout
Aishwarya Mathuria [Fri, 5 Jun 2026 05:58:45 +0000 (11:28 +0530)]
Merge pull request #69240 from amathuria/wip-amat-crimson-debug-snaptrim-timeout

crimson/osd: add debug logs for snaptrim and scrub background_process_lock

11 days agoMerge pull request #68989 from tchaikov/wip-slim-mgr-module
Kefu Chai [Fri, 5 Jun 2026 04:53:45 +0000 (12:53 +0800)]
Merge pull request #68989 from tchaikov/wip-slim-mgr-module

debian,rpm: split ceph-mgr-modules-core into per-module packages

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: John Mulligan <jmulligan@redhat.com>