]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
3 months agocrimson/os/seastore/omap_manager: apply linked_tree_node to omap trees
Xuehan Xu [Fri, 14 Feb 2025 07:48:01 +0000 (15:48 +0800)]
crimson/os/seastore/omap_manager: apply linked_tree_node to omap trees

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
3 months agocrimson/os/seastore/transaction_manager: allow users of
Xuehan Xu [Mon, 7 Apr 2025 08:42:18 +0000 (16:42 +0800)]
crimson/os/seastore/transaction_manager: allow users of
TransactionManager to pass an initializer when loading logical extents
from disks

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
3 months agocrimson/os/seastore/cache: do `prepare_commit` before retiring extents
Xuehan Xu [Thu, 27 Feb 2025 05:54:49 +0000 (13:54 +0800)]
crimson/os/seastore/cache: do `prepare_commit` before retiring extents

Linked tree nodes in logical trees need to take parents from the prior
instances when being rewritten, which has to be done before the prior
instances are retired.

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
3 months agocrimson/os/seastore/linked_tree_node: make interface required by the
Xuehan Xu [Thu, 20 Feb 2025 08:34:35 +0000 (16:34 +0800)]
crimson/os/seastore/linked_tree_node: make interface required by the
linked tree nodes more general

So that other btrees like the omap tree can adapt to it.

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
3 months agocrimson/os/seastore/btree: rename base_child_node_t to base_child_t
Xuehan Xu [Tue, 4 Mar 2025 09:05:57 +0000 (17:05 +0800)]
crimson/os/seastore/btree: rename base_child_node_t to base_child_t

To distinguish from child_node_t

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
3 months agocrimson/os/seastore/omap_manager: rename StringKVNodeLayout::get_index
Xuehan Xu [Fri, 14 Feb 2025 08:57:59 +0000 (16:57 +0800)]
crimson/os/seastore/omap_manager: rename StringKVNodeLayout::get_index
to StringKVNodeLayout::get_offset

This is to be consistent with linked tree nodes

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
3 months agocrimson/os/seastore/linked_tree_node: drop the need for extents to
Xuehan Xu [Thu, 13 Feb 2025 09:25:18 +0000 (17:25 +0800)]
crimson/os/seastore/linked_tree_node: drop the need for extents to
possess a field named "range"

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
3 months agocrimson/os/seastore/linked_tree_node: resize child pointer vector if
Xuehan Xu [Wed, 22 Jan 2025 09:44:13 +0000 (17:44 +0800)]
crimson/os/seastore/linked_tree_node: resize child pointer vector if
necessary

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
3 months agoMerge pull request #62697 from Hezko/nvmeof-response-fix
Nizamudeen A [Fri, 11 Apr 2025 07:45:42 +0000 (13:15 +0530)]
Merge pull request #62697 from Hezko/nvmeof-response-fix

mgr/dashboard: fix subsystems list api response

3 months agoMerge pull request #62527 from rhcs-dashboard/smb-file-uploader
Pedro Gonzalez Gomez [Fri, 11 Apr 2025 04:11:17 +0000 (06:11 +0200)]
Merge pull request #62527 from rhcs-dashboard/smb-file-uploader

mgr/dashboard: add file uploader for smb usersandgroups

Reviewed-by: nizamial09 <nia@redhat.com>
3 months agoMerge pull request #62673 from adamemerson/wip-test-osd-signed-comparison
SrinivasaBharathKanta [Fri, 11 Apr 2025 02:22:32 +0000 (07:52 +0530)]
Merge pull request #62673 from adamemerson/wip-test-osd-signed-comparison

test/osd: Fix signed comparison warning

3 months agoMerge pull request #62163 from zmc/bwc-debs
Zack Cerza [Fri, 11 Apr 2025 01:22:32 +0000 (19:22 -0600)]
Merge pull request #62163 from zmc/bwc-debs

Enabling containerized debian pipeline builds

3 months agoMerge pull request #62626 from aainscow/have_significant_feature
Laura Flores [Thu, 10 Apr 2025 22:46:48 +0000 (17:46 -0500)]
Merge pull request #62626 from aainscow/have_significant_feature

osd: Introduce macro to police use of significant features.

3 months agoMerge pull request #62589 from ceph/wip-yuriw-18.2.5-release.notes-main
Yuri Weinstein [Thu, 10 Apr 2025 20:41:56 +0000 (13:41 -0700)]
Merge pull request #62589 from ceph/wip-yuriw-18.2.5-release.notes-main

doc: reef 18.2.5 release notes

Reviewed-by: Laura Flores <lflores@redhat.com>
3 months agoMerge pull request #62734 from ceph/wip-yuriw-19.2.2-release.notes-main
Yuri Weinstein [Thu, 10 Apr 2025 20:06:54 +0000 (13:06 -0700)]
Merge pull request #62734 from ceph/wip-yuriw-19.2.2-release.notes-main

doc: squid 19.2.2 release notes

Reviewed-by: Adam Emerson <aemerson@redhat.com>
Reviewed-by: Laura Flores <lflores@redhat.com>
3 months agobuildcontainer-setup.sh: Fix curl package conflict 62163/head
Zack Cerza [Thu, 10 Apr 2025 18:33:59 +0000 (12:33 -0600)]
buildcontainer-setup.sh: Fix curl package conflict

It looks like at some point the centos9 image started shipping with
curl-minimal, which conflicts with the regular curl package. Asking dnf to find
the binary avoids this, since both packages provide it. Since we were already
doing this with rpmbuild, we can go ahead and loop wget into that in case
something similar happens there.

Signed-off-by: Zack Cerza <zack@cerza.org>
3 months agobuild-with-container.py: Pass distro to make-debs
Zack Cerza [Fri, 7 Mar 2025 23:59:40 +0000 (16:59 -0700)]
build-with-container.py: Pass distro to make-debs

Signed-off-by: Zack Cerza <zack@cerza.org>
3 months agomake-debs.sh: Optionally take debian version
Zack Cerza [Fri, 7 Mar 2025 20:53:23 +0000 (13:53 -0700)]
make-debs.sh: Optionally take debian version

Our existing CI builds have names like:
  ceph-base_20.0.0-194-g6efaea33-1jammy_amd64.deb
Before this change, they are like:
  ceph-base_20.0.0-158-gb0de3a42-1_amd64.deb
This way we can pass e.g. "jammy" to end up with names compatible with our CI
builds.

Signed-off-by: Zack Cerza <zack@cerza.org>
3 months agodebian/rules: Optionally enable sccache
Zack Cerza [Thu, 6 Mar 2025 19:36:42 +0000 (12:36 -0700)]
debian/rules: Optionally enable sccache

Signed-off-by: Zack Cerza <zack@cerza.org>
3 months agodebian/rules: Disable dh_dwz if DWZ=false
Zack Cerza [Wed, 20 Nov 2024 00:45:25 +0000 (17:45 -0700)]
debian/rules: Disable dh_dwz if DWZ=false

Signed-off-by: Zack Cerza <zack@cerza.org>
3 months agomake-debs.sh: Don't use ccache if using sccache
Zack Cerza [Thu, 6 Mar 2025 18:28:07 +0000 (11:28 -0700)]
make-debs.sh: Don't use ccache if using sccache

Signed-off-by: Zack Cerza <zack@cerza.org>
3 months agobuild-with-container.py: Pass version to make-debs
Zack Cerza [Wed, 5 Mar 2025 21:47:26 +0000 (14:47 -0700)]
build-with-container.py: Pass version to make-debs

Signed-off-by: Zack Cerza <zack@cerza.org>
3 months agomake-debs.sh: Optionally avoid make-dist
Zack Cerza [Wed, 5 Mar 2025 21:40:55 +0000 (14:40 -0700)]
make-debs.sh: Optionally avoid make-dist

Signed-off-by: Zack Cerza <zack@cerza.org>
3 months agodoc: squid 19.2.2 release notes 62734/head
Yuri Weinstein [Tue, 8 Apr 2025 18:48:04 +0000 (11:48 -0700)]
doc: squid 19.2.2 release notes

https://tracker.ceph.com/issues/70822
Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
3 months agoMerge pull request #62759 from bluikko/doc-prompts-ceph-volume
Anthony D'Atri [Thu, 10 Apr 2025 15:37:34 +0000 (11:37 -0400)]
Merge pull request #62759 from bluikko/doc-prompts-ceph-volume

doc/ceph-volume: Promptify commands and fix formatting

3 months agoMerge pull request #62663 from adamemerson/wip-tbb-O0
Adam Emerson [Thu, 10 Apr 2025 15:21:56 +0000 (11:21 -0400)]
Merge pull request #62663 from adamemerson/wip-tbb-O0

build: Pull TBB into `$EXTRALIBS` if it is available

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
3 months agoMerge pull request #62669 from adamemerson/wip-allocsim-replayer-assert
Adam Emerson [Thu, 10 Apr 2025 15:18:47 +0000 (11:18 -0400)]
Merge pull request #62669 from adamemerson/wip-allocsim-replayer-assert

test/objectstore/allocsim: Fix link error

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
3 months agoMerge pull request #62753 from gbregman/main
Gil Bregman [Thu, 10 Apr 2025 14:49:52 +0000 (17:49 +0300)]
Merge pull request #62753 from gbregman/main

mgr/cephadm/nvmeof: Add OMAP read lock parameters to NVMEoF configuration

3 months agoMerge pull request #62762 from bluikko/patch-23
Anthony D'Atri [Thu, 10 Apr 2025 14:39:05 +0000 (10:39 -0400)]
Merge pull request #62762 from bluikko/patch-23

doc/cephfs: Fix double prompts in commands in multimds.rst

3 months agodoc/cephfs: Fix double prompts in commands in multimds.rst 62762/head
Ville Ojamo [Thu, 10 Apr 2025 09:22:26 +0000 (16:22 +0700)]
doc/cephfs: Fix double prompts in commands in multimds.rst

Some example commands had double prompts: one `#`
from the `.. prompt` and after that another hardcoded
`$` character.

Remove the extra user prompt and leave only the root
prompt from the `.. prompt` block.

Signed-off-by: Ville Ojamo <14869000+bluikko@users.noreply.github.com>
3 months agodoc/ceph-volume: Promptify commands and fix formatting 62759/head
Ville Ojamo [Thu, 10 Apr 2025 08:09:11 +0000 (15:09 +0700)]
doc/ceph-volume: Promptify commands and fix formatting

Use the more modern prompt block for CLI
commands, fix missing newline and messed up
line breaks.
Also change existing prompts to all indent with
same amount of spaces.

Signed-off-by: Ville Ojamo <14869000+bluikko@users.noreply.github.com>
3 months agoMerge pull request #62633 from cyx1231st/wip-seastore-le-map-cleanup
Yingxin Cheng [Thu, 10 Apr 2025 02:41:45 +0000 (10:41 +0800)]
Merge pull request #62633 from cyx1231st/wip-seastore-le-map-cleanup

crimson/os/seastore: cleanups related to lba and cache

Reviewed-by: Xuehan Xu <xuxuehan@qianxin.com>
Reviewed-by: Zhang Song <zhangsong02@qianxin.com>
3 months agoMerge pull request #62662 from adamemerson/wip-amqp-deprecation
Adam Emerson [Wed, 9 Apr 2025 20:22:24 +0000 (16:22 -0400)]
Merge pull request #62662 from adamemerson/wip-amqp-deprecation

rgw: Fix deprecated amqp includes

Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 months agoMerge pull request #62580 from Matan-B/wip-matanb-findboost-warning
Adam Emerson [Wed, 9 Apr 2025 20:17:09 +0000 (16:17 -0400)]
Merge pull request #62580 from Matan-B/wip-matanb-findboost-warning

cmake/modules/FindBoost.cmake: fix Boost_NO_WARN_NEW_VERSIONS

Reviewed-by: Adam Emerson <aemerson@redhat.com>
3 months agodoc/releases: fix formatting for backticks 62589/head
Laura Flores [Tue, 8 Apr 2025 15:48:02 +0000 (10:48 -0500)]
doc/releases: fix formatting for backticks

Signed-off-by: Laura Flores <lflores@ibm.com>
Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
3 months agoMerge pull request #62451 from bill-scales/ec_data_structs
Yuri Weinstein [Wed, 9 Apr 2025 19:23:43 +0000 (12:23 -0700)]
Merge pull request #62451 from bill-scales/ec_data_structs

osd: EC optimizations: new types and additions to data structures

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
3 months agoMerge pull request #61652 from ifed01/wip-ifed-print-extra-level
Yuri Weinstein [Wed, 9 Apr 2025 19:21:16 +0000 (12:21 -0700)]
Merge pull request #61652 from ifed01/wip-ifed-print-extra-level

os/bluestore: print the first RocksDB level which doesn't fit into fast

Reviewed-by: Md Mahamudur Rahaman Sajib <mahamudur.sajib@croit.io>
3 months agomgr/cephadm/nvmeof: Add OMAP read lock parameters to NVMEoF configuration 62753/head
Gil Bregman [Wed, 9 Apr 2025 19:08:49 +0000 (22:08 +0300)]
mgr/cephadm/nvmeof: Add OMAP read lock parameters to NVMEoF configuration

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

Signed-off-by: Gil Bregman <gbregman@il.ibm.com>
3 months agoMerge pull request #57206 from clwluvw/restrict-public-buckets
Casey Bodley [Wed, 9 Apr 2025 17:47:45 +0000 (13:47 -0400)]
Merge pull request #57206 from clwluvw/restrict-public-buckets

rgw: implement RestrictPublicBuckets from PublicAccessBlock

Reviewed-by: Adam Emerson <aemerson@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 months agoMerge pull request #62538 from cbodley/wip-rgw-control-watch-par
Casey Bodley [Wed, 9 Apr 2025 17:03:19 +0000 (13:03 -0400)]
Merge pull request #62538 from cbodley/wip-rgw-control-watch-par

rgw: send concurrent watch/unwatch operations

Reviewed-by: Adam Emerson <aemerson@redhat.com>
3 months agoMerge pull request #62159 from cbodley/wip-qa-23264
Casey Bodley [Wed, 9 Apr 2025 17:03:04 +0000 (13:03 -0400)]
Merge pull request #62159 from cbodley/wip-qa-23264

qa/rgw: use storage classes for rgw/crypt

Reviewed-by: Adam Emerson <aemerson@redhat.com>
3 months agoMerge pull request #62706 from cbodley/wip-70729
Casey Bodley [Wed, 9 Apr 2025 17:02:39 +0000 (13:02 -0400)]
Merge pull request #62706 from cbodley/wip-70729

test/rgw/multisite: fix parsing of 'topic list' output

Reviewed-by: Ali Masarwa <amasarwa@redhat.com>
3 months agoMerge pull request #62686 from Cybertinus/main
Anthony D'Atri [Wed, 9 Apr 2025 14:14:01 +0000 (10:14 -0400)]
Merge pull request #62686 from Cybertinus/main

documentation:remove deprecated usage apt-key

3 months agodocumentation: Update get-packages.rst 62686/head
Cybertinus [Sat, 5 Apr 2025 10:54:26 +0000 (12:54 +0200)]
documentation: Update get-packages.rst

The usage of apt-key is deprecated, thus updated the documentation to reference the new way of installing a repo key.

Signed-off-by: Cybertinus <github@cybertinus.nl>
3 months agoMerge pull request #62727 from idryomov/wip-70831
Ilya Dryomov [Wed, 9 Apr 2025 10:58:44 +0000 (12:58 +0200)]
Merge pull request #62727 from idryomov/wip-70831

test/librbd/test_notify.py: force line-buffered output

Reviewed-by: Mykola Golub <mykola.golub@clyso.com>
Reviewed-by: Vinay Bhaskar Varada <vvarada@redhat.com>
3 months agoMerge pull request #57448 from aclamk/wip-aclamk-bs-recompression-segmented-data
Adam Kupczyk [Wed, 9 Apr 2025 09:10:23 +0000 (11:10 +0200)]
Merge pull request #57448 from aclamk/wip-aclamk-bs-recompression-segmented-data

os/bluestore: Recompression, part 3. Segmented onode.

3 months agoMerge pull request #62224 from aclamk/wip-aclamk-pere-wal-fsync
Adam Kupczyk [Wed, 9 Apr 2025 09:09:57 +0000 (11:09 +0200)]
Merge pull request #62224 from aclamk/wip-aclamk-pere-wal-fsync

os/bluestore: Fast WAL for RocksDB

3 months agoMerge pull request #62588 from aclamk/wip-aclamk-bluefs-remove-truncate
Adam Kupczyk [Wed, 9 Apr 2025 09:09:34 +0000 (11:09 +0200)]
Merge pull request #62588 from aclamk/wip-aclamk-bluefs-remove-truncate

os/bluestore: Fix race in BlueFS truncate / remove

3 months agoMerge pull request #61909 from bazaah/chore/deprecated-iterator-impl
Laura Flores [Tue, 8 Apr 2025 20:07:08 +0000 (15:07 -0500)]
Merge pull request #61909 from bazaah/chore/deprecated-iterator-impl

include,dpdk: fix two usages of std::iterator (deprecated)

3 months agoqa/rgw: use storage classes for rgw/crypt 62159/head
Casey Bodley [Thu, 6 Mar 2025 18:46:24 +0000 (13:46 -0500)]
qa/rgw: use storage classes for rgw/crypt

enable compression on one storage class so we can test copy to/from
compressed objects

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 months agoqa/rgw: storage classes specify extra args in yaml
Casey Bodley [Wed, 5 Mar 2025 21:59:36 +0000 (16:59 -0500)]
qa/rgw: storage classes specify extra args in yaml

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 months agoMerge pull request #60670 from cbodley/wip-cls-rgw-shard-io
Casey Bodley [Tue, 8 Apr 2025 19:46:14 +0000 (15:46 -0400)]
Merge pull request #60670 from cbodley/wip-cls-rgw-shard-io

rgw/rados: add async algorithms for concurrent index operations

Reviewed-by: Adam Emerson <aemerson@redhat.com>
3 months agoMerge pull request #62720 from tchaikov/wip-kefu-mailmap
Casey Bodley [Tue, 8 Apr 2025 19:35:13 +0000 (15:35 -0400)]
Merge pull request #62720 from tchaikov/wip-kefu-mailmap

mailmap: update affiliation for Kefu Chai

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 months agoMerge pull request #62716 from afreen23/wip-fix-empty-ver
afreen23 [Tue, 8 Apr 2025 16:46:20 +0000 (22:16 +0530)]
Merge pull request #62716 from afreen23/wip-fix-empty-ver

mgr/dashboard: Fix empty ceph version in GET api/hosts

Reviewed-by: Afreen Misbah <afreen@ibm.com>
Reviewed-by: Aashish Sharma <aasharma@redhat.com>
3 months agocls/rgw: remove unused CLSRGWConcurrentIO and subclasses 60670/head
Casey Bodley [Thu, 7 Nov 2024 23:31:29 +0000 (18:31 -0500)]
cls/rgw: remove unused CLSRGWConcurrentIO and subclasses

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 months agoos/bluestore/bluefs: Fix race condition between truncate() and unlink() 62588/head
Adam Kupczyk [Tue, 1 Apr 2025 14:01:23 +0000 (14:01 +0000)]
os/bluestore/bluefs: Fix race condition between truncate() and unlink()

It was possible for unlink() to interrupt ongoing truncate().
As the result, unlink() finishes properly, but truncate() is not aware
of it and does:
1) updates file that is already removed
2) releases same allocations again

Now fixed by checking if file is deleted under FILE lock.

https://tracker.ceph.com/issues/70747

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
3 months agorgw/rados: index operations use async_reads/writes()
Casey Bodley [Thu, 7 Nov 2024 21:10:15 +0000 (16:10 -0500)]
rgw/rados: index operations use async_reads/writes()

replace the classes derived from CLSRGWConcurrentIO with classes
derived from Reader/Writer/RevertibleWriter and use the async algorithms

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 months agorgw/rados: add concurrent io algorithms for sharded data
Casey Bodley [Thu, 7 Nov 2024 20:36:45 +0000 (15:36 -0500)]
rgw/rados: add concurrent io algorithms for sharded data

cls/rgw provides the base class CLSRGWConcurrentIO as a swiss army knife
for bucket index operations that visit every shard object. while it uses
asynchronous librados requests to perform the io, it blocks on a
condition variable when waiting for the AioCompletions.

for use in coroutines, we need a version of this that suspends instead
of blocking. and to support both stackful and stackless coroutines, we
want a fully-generic async inferface templated on CompletionToken.

while the CLSRGWConcurrentIO algorithm works for all current uses
(reads and writes, with/without retries, with/without cleanup), i chose
to break this into 3 algorithms with well-defined semantics:

1. reads: to produce a successful result, all shard operations must
   succeed. so any shard's failure causes the rest to be cancelled or
   skipped. supports retries for ListBucket (RGWBIAdvanceAndRetryError).
2. writes: even if some shards fail, we still want to visit every shard
   before returning the error. supports retries for log trimming
   operations (repeat until ENODATA).
3. revertible writes: similar to reads, requires all shard operations to
   succeed. on any failure, the side effects of any successful writes
   must be reverted before returning. only used by IndexInit (any created
   shards are removed on failure).

each algorithm provides a pure virtual base class that must be
implemented for each type of operation, similar to how existing
operations inherit from CLSRGWConcurrentIO.

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 months agodoc/releases: fix formatting and wording
Laura Flores [Tue, 8 Apr 2025 15:44:04 +0000 (10:44 -0500)]
doc/releases: fix formatting and wording

Signed-off-by: Laura Flores <lflores@ibm.com>
3 months agorgw: pass optional_yield to all index ops
Casey Bodley [Thu, 7 Nov 2024 21:09:11 +0000 (16:09 -0500)]
rgw: pass optional_yield to all index ops

prepare for coroutine support by making the yield context available to
all index ops

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 months agoMerge pull request #62571 from clwluvw/trim-log-cleanup
J. Eric Ivancich [Tue, 8 Apr 2025 13:52:07 +0000 (09:52 -0400)]
Merge pull request #62571 from clwluvw/trim-log-cleanup

rgw: BucketTrimShardCollectCR expect ENODATA as empty

Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 months agoMerge pull request #61966 from mkogan1/wip-qat-logs-crypto
J. Eric Ivancich [Tue, 8 Apr 2025 13:51:52 +0000 (09:51 -0400)]
Merge pull request #61966 from mkogan1/wip-qat-logs-crypto

rgw: qat: improve QAT logs when HW is miss-configured for QAT encryption

Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 months agomailmap: update affiliation for Kefu Chai 62720/head
Kefu Chai [Tue, 8 Apr 2025 02:52:01 +0000 (10:52 +0800)]
mailmap: update affiliation for Kefu Chai

he's not affiliated to Red Hat anymore, so map his contribution to
his private email address.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 months agomgr/dashboard: Fix empty ceph version in GET api/hosts 62716/head
Afreen Misbah [Mon, 7 Apr 2025 19:00:08 +0000 (00:30 +0530)]
mgr/dashboard: Fix empty ceph version in GET api/hosts

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

Due to the pagination the host list is being fetched from orchestrator which caused a regression as via orchestrator list ceph version is always marked empty.
Caused by https://github.com/ceph/ceph/pull/52154

Also fixed tests , as the new version addition causing whole json object mock to fail in tests

Signed-off-by: Afreen Misbah <afreen@ibm.com>
3 months agotest/librbd/test_notify.py: drop RBD_DISABLE_UPDATE_FEATURES 62727/head
Ilya Dryomov [Tue, 8 Apr 2025 11:53:23 +0000 (13:53 +0200)]
test/librbd/test_notify.py: drop RBD_DISABLE_UPDATE_FEATURES

This was put in place in commit 9c0b239d70cd ("qa/upgrade:
conditionally disable update_features tests") to paper over a backwards
compatibility issue that arose from commit 01ff1530544c ("librbd: make
all maintenance op notifications async").  It's not needed in squid or
later because upgrades from octopus are tested only until reef.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
3 months agotest/librbd/test_notify.py: force line-buffered output
Ilya Dryomov [Mon, 7 Apr 2025 10:40:50 +0000 (12:40 +0200)]
test/librbd/test_notify.py: force line-buffered output

"master" and "slave" invocations are intended to run in parallel and
coordinate between themselves.  Ensure that their respective output is
properly timestamped and ordered in teuthology.log file.

Fixes: https://tracker.ceph.com/issues/70831
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
3 months agoMerge pull request #62635 from Matan-B/wip-matanb-crimson-ignore-abort
Matan Breizman [Tue, 8 Apr 2025 08:17:12 +0000 (11:17 +0300)]
Merge pull request #62635 from Matan-B/wip-matanb-crimson-ignore-abort

test/crimson/test_errorator: showcase assert_all/handle/pass_furhter

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
3 months agoMerge pull request #62691 from Matan-B/wip-matanb-crimson-cronjobs
Matan Breizman [Tue, 8 Apr 2025 07:27:11 +0000 (10:27 +0300)]
Merge pull request #62691 from Matan-B/wip-matanb-crimson-cronjobs

qa/crontab: Update Crimson's Cron Jobs

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
3 months agoMerge pull request #62535 from Matan-B/wip-matanb-crimson-replicated-missing
Matan Breizman [Tue, 8 Apr 2025 07:22:56 +0000 (10:22 +0300)]
Merge pull request #62535 from Matan-B/wip-matanb-crimson-replicated-missing

osd/../client_request: Fix clone replicated reads

Reviewed-by: Samuel Just <sjust@redhat.com>
3 months agoMerge pull request #62640 from ivancich/wip-admin-robust-rm-obj
J. Eric Ivancich [Tue, 8 Apr 2025 05:14:41 +0000 (01:14 -0400)]
Merge pull request #62640 from ivancich/wip-admin-robust-rm-obj

rgw: add force option to `radosgw-admin object rm ...`

Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 months agoMerge pull request #62679 from rhcs-dashboard/add-nvmeof-grafana-dashboards
Aashish Sharma [Tue, 8 Apr 2025 04:34:43 +0000 (10:04 +0530)]
Merge pull request #62679 from rhcs-dashboard/add-nvmeof-grafana-dashboards

mgr/dashboard: add nvmeof performance and overview grafana dashboard to Block -> Nvme/TCP tab in dashboard

Reviewed-by: Afreen Misbah <afreen@ibm.com>
3 months agoMerge pull request #62563 from tchaikov/osd-atomic
Kefu Chai [Tue, 8 Apr 2025 02:46:15 +0000 (10:46 +0800)]
Merge pull request #62563 from tchaikov/osd-atomic

osd: replace deprecated atomic_store with std::atomic<shared_ptr>

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
3 months agoMerge pull request #62038 from phlogistonjohn/jjm-cephadm-infer-69278
Adam King [Mon, 7 Apr 2025 22:30:53 +0000 (18:30 -0400)]
Merge pull request #62038 from phlogistonjohn/jjm-cephadm-infer-69278

cephadm: update and improve container image infer function

Reviewed-by: Adam King <adking@redhat.com>
3 months agoMerge pull request #60890 from rzarzynski/wip-os-fastomapiter-killomapiterator
Radoslaw Zarzynski [Mon, 7 Apr 2025 22:08:38 +0000 (00:08 +0200)]
Merge pull request #60890 from rzarzynski/wip-os-fastomapiter-killomapiterator

osd, os: drop the OmapIterator in favor of omap_iterate. Remove ObjectMap

Reviewed-by: Laura Flores <lflores@redhat.com>
Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
3 months agodoc: reef 18.2.5 release notes
Yuri Weinstein [Mon, 31 Mar 2025 17:52:51 +0000 (10:52 -0700)]
doc: reef 18.2.5 release notes
https://tracker.ceph.com/issues/7056

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
3 months agorgw/rados: remove duplicated RGWRados::cls_bucket_head()
Casey Bodley [Fri, 8 Nov 2024 00:04:53 +0000 (19:04 -0500)]
rgw/rados: remove duplicated RGWRados::cls_bucket_head()

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 months agorgw/rados: move trim_reshard_log() from RGWRados to RGWSI_BucketIndex_RADOS
Casey Bodley [Fri, 15 Nov 2024 21:13:59 +0000 (16:13 -0500)]
rgw/rados: move trim_reshard_log() from RGWRados to RGWSI_BucketIndex_RADOS

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 months agorgw/rados: move RGWRados::bucket_set_reshard() to RGWSI_BucketIndex_RADOS
Casey Bodley [Fri, 15 Nov 2024 14:17:40 +0000 (09:17 -0500)]
rgw/rados: move RGWRados::bucket_set_reshard() to RGWSI_BucketIndex_RADOS

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 months agorgw/rados: remove unused RGWReshard::clear_bucket_resharding()
Casey Bodley [Fri, 15 Nov 2024 18:18:00 +0000 (13:18 -0500)]
rgw/rados: remove unused RGWReshard::clear_bucket_resharding()

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 months agoosd: EC optimizations: add shard_versions to object_info_t 62451/head
Bill Scales [Thu, 6 Mar 2025 09:44:00 +0000 (09:44 +0000)]
osd: EC optimizations: add shard_versions to object_info_t

EC optimized pools do not always update every shard for every write I/O,
this includes not updating the object_info_t (OI attribute). This means
different shards can have OI indicaiting the object is at different
versions. When an I/O updates a subset of the shards, the OI for the
updated shards will record the old version number for the unmodified
shards in the shard_versions map. The latest OI therefore has a record
of the expected version number for all the shards which can be used to
work out what needs to be backfilled.

An empty shard_versions map imples that the OI attribute should be the
same on all shards.

Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
3 months agoosd: EC optimizations: add written and present shard sets to pg_log_enty_t
Bill Scales [Thu, 6 Mar 2025 08:01:49 +0000 (08:01 +0000)]
osd: EC optimizations: add written and present shard sets to pg_log_enty_t

Add two new sets to the pg_log_entry for use by EC optimization pools.
The written shards set tracks which shards were written to, the
present shards set tracks which shards were in the acting set at the
time of the write.

An empty set (default) is used to indicate all shards. For pools without
allow_ec_optimizations the written set is empty (indicating all shards are
written) and the present set is empty and unused.

Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
3 months agoosd: EC optimizations: add partial_writes_last_complete to pg_info_t
Bill Scales [Thu, 6 Mar 2025 07:58:51 +0000 (07:58 +0000)]
osd: EC optimizations: add partial_writes_last_complete to pg_info_t

Add partial_writes_last_complete map to pg_info_t and pg_fast_info_t.
For optimized EC pools not all shards receive every log entry. As
log entries are marked completed the partial writeis last complete
map is updated to track shards that did not receive the log entry.

Each map entry stores an eversion range. The first version is the last
completion the shard participated in, the second version tracks subsequent
updates where the shard was not updated. For example the range 88'10-88'12
means a shard completed update 10 and that updates 11 and 12 intentionally
did not update the shard. This information is used during peering to
distinguish a shard that is missing updates from a shard that intentionally
did not participate in an update to work out what recovery is required.

By default this map is empty indicating that every shard is expected to
participate in an update and have a copy of the log entry.

Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
3 months agoosd: EC optimizations: add nonprimary_shards set to pg_pool_t
Bill Scales [Thu, 6 Mar 2025 07:53:02 +0000 (07:53 +0000)]
osd: EC optimizations: add nonprimary_shards set to pg_pool_t

EC optimizations pools do not update every shard on every I/O. The primary
must have a complete log and requires objects to have up to date object
attributes, so the choice of primary has to be restricted. Shards that
cannot become a primary are listed in the nonprimary_shards set.

For a K+M EC pool with optimizations enabled the 1st data shard and all
M coding parity shards are always updated and can become a primary, the
other shards will be marked as nonprimary.

The new set nonprimary_shards stores shards that cannot become the primary,
by default it is an empty set which retains existing behavior. When
optimisations are enabled on an EC pool this set will be filled in to
restrict the choice of primary.

Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
3 months agoosd: EC optimizations: additional types for EC
Bill Scales [Sun, 23 Mar 2025 14:20:33 +0000 (14:20 +0000)]
osd: EC optimizations: additional types for EC

Add some extra types required by the EC optimizations code:

raw_shard_id_t is an equivalent type to shard_id_t but is used
for storing raw shards. Strong typing prevents bugs where code
forgets to translate between the two types.

shard_id_map is a mini_flat_map indexed by shard_id_t which will
be used by the EC optimizations I/O path to track updates to
each shard.

shard_id_set is a bitset_set of shard_id_t which is a compact
and fast way of storing a set of shards involved in an EC
operation.

Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
3 months agotest/rgw/multisite: fix parsing of 'topic list' output 62706/head
Casey Bodley [Mon, 7 Apr 2025 13:26:21 +0000 (09:26 -0400)]
test/rgw/multisite: fix parsing of 'topic list' output

adjust the parsing to match changes from 3f0428a017cdf35b7290cf7836eb4baa4eb0e774

Fixes: https://tracker.ceph.com/issues/70729
Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 months agoMerge pull request #62596 from rhcs-dashboard/rgw-url
afreen23 [Mon, 7 Apr 2025 11:12:12 +0000 (16:42 +0530)]
Merge pull request #62596 from rhcs-dashboard/rgw-url

mgr/dashboard: introduce dashboard setting to resolve rgw hostname

Reviewed-by: Afreen Misbah <afreen@ibm.com>
Reviewed-by: Aashish Sharma <aasharma@redhat.com>
3 months agotest/crimson/test_errorator: showcase assert_all/handle/pass_furhter 62635/head
Matan Breizman [Mon, 7 Apr 2025 09:44:14 +0000 (09:44 +0000)]
test/crimson/test_errorator: showcase assert_all/handle/pass_furhter

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
3 months agoMerge pull request #62649 from Matan-B/wip-matanb-crimson-coroutines-errors
Matan Breizman [Mon, 7 Apr 2025 08:24:24 +0000 (11:24 +0300)]
Merge pull request #62649 from Matan-B/wip-matanb-crimson-coroutines-errors

test/crimson/test_crimson_coroutines: showcase errorator examples

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
3 months agomgr/dashboard: fix subsystems list api response 62697/head
Tomer Haskalovitch [Mon, 7 Apr 2025 08:08:07 +0000 (11:08 +0300)]
mgr/dashboard: fix subsystems list api response

Signed-off-by: Tomer Haskalovitch <il033030@tomers-mbp.givatayim.il.ibm.com>
3 months agoMerge pull request #62080 from xxhdx1985126/wip-70180
Matan Breizman [Mon, 7 Apr 2025 08:12:31 +0000 (11:12 +0300)]
Merge pull request #62080 from xxhdx1985126/wip-70180

crimson/osd/pg_recovery: use OperationThrottler to throttle object pushes/pulls

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
3 months agomgr/dashboard: add nvmeof performance and overview grafana dashboards to Block -... 62679/head
Aashish Sharma [Thu, 3 Apr 2025 06:26:19 +0000 (11:56 +0530)]
mgr/dashboard: add nvmeof performance and overview grafana dashboards to Block -> Nvme/TCP tab in dashboard

Fixes: https://tracker.ceph.com/issues/70793
Signed-off-by: Aashish Sharma <aasharma@redhat.com>
3 months agoMerge pull request #62687 from anthonyeleven/acronym
Zac Dover [Sun, 6 Apr 2025 19:55:21 +0000 (05:55 +1000)]
Merge pull request #62687 from anthonyeleven/acronym

doc/cephadm/services: improve rgw.rst and snmp-gateway.rst

Reviewed-by: Zac Dover <zac.dover@proton.me>
3 months agodoc/cephadm/services: improve rgw.rst and snmp-gateway.rst 62687/head
Anthony D'Atri [Sat, 5 Apr 2025 12:22:46 +0000 (08:22 -0400)]
doc/cephadm/services: improve rgw.rst and snmp-gateway.rst

Signed-off-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
3 months agoqa/crontab: Run Crimson main branch twice a week. 62691/head
Matan Breizman [Sun, 6 Apr 2025 10:39:50 +0000 (10:39 +0000)]
qa/crontab: Run Crimson main branch twice a week.

Crimson's suite is reletavly limited and currently is run for
main only (not for prior releases).
Changes to Crimson are more delicate and having more main runs
to compare to might help with (git-)bisecting issues

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
3 months agoqa/crontab: Don't run squid branch for Crimson
Matan Breizman [Sun, 6 Apr 2025 10:36:38 +0000 (10:36 +0000)]
qa/crontab: Don't run squid branch for Crimson

Crimson is only supported in main currently (and T in once relevant).

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
3 months agobuild: Link TBB into io_exerciser if present 62663/head
Adam Emerson [Thu, 23 Jan 2025 21:15:52 +0000 (16:15 -0500)]
build: Link TBB into io_exerciser if present

libstdc++ uses TBB to implement the execution library if it is
available. If it's not present, we get a serial backend.

Currently, we aren't getting link errors in most cases because the
reference is optimized out, but when compiling with `-O0`, we hit a
missing symbol.

If we use more of the execution library, we'll reference TBB in ways
that don't optimize out.

As such, test if TBB is available. If so, link against it.

See https://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html#status.iso.2017
for more information.

Signed-off-by: Adam Emerson <aemerson@redhat.com>
3 months agoMerge pull request #53799 from smanjara/wip-shilpa-cleanup-bi
Shilpa Jagannath [Fri, 4 Apr 2025 19:51:07 +0000 (12:51 -0700)]
Merge pull request #53799 from smanjara/wip-shilpa-cleanup-bi

rgw/multisite: bucket instance cleanup after deletion

3 months agotools: refactor std::tie with structured binding in COT 60890/head
Radoslaw Zarzynski [Wed, 12 Feb 2025 15:10:30 +0000 (15:10 +0000)]
tools: refactor std::tie with structured binding in COT

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
3 months agoosd: use std::string::starts_with() in PGLog::read_log_and_missing()
Radoslaw Zarzynski [Wed, 12 Feb 2025 14:50:19 +0000 (14:50 +0000)]
osd: use std::string::starts_with() in PGLog::read_log_and_missing()

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
3 months agoosd: switch two complex debugs to fmt::format in SnapMapper::run()
Radoslaw Zarzynski [Wed, 12 Feb 2025 13:12:51 +0000 (13:12 +0000)]
osd: switch two complex debugs to fmt::format in SnapMapper::run()

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>