]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
13 months agodebian: package mgr/rgw in ceph-mgr-modules-core 57811/head
Kefu Chai [Sat, 1 Jun 2024 00:39:03 +0000 (08:39 +0800)]
debian: package mgr/rgw in ceph-mgr-modules-core

in 110db72e, we added the rgw mgr module to ceph-mgr-modules-core
rpm package. but we didn't add this module to the corresponding
debian package.

rgw mgr module provides a simple interface to deploy RGW multisite
setup. so it would be nice to have it in ceph's debian packages as
well.

despite that rgw is not part of the core features, since this module
is already in ceph-mgr-modules-core rpm package, and it is relatively
small and does not pulling extra dependencies, let's added to the
debian packge with the same name. we can revisit this decision and
extract it out in a following up change if it is necessary in future.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
13 months agoMerge pull request #57774 from linuxbox2/wip-rgwlc-66287
J. Eric Ivancich [Fri, 31 May 2024 19:34:41 +0000 (15:34 -0400)]
Merge pull request #57774 from linuxbox2/wip-rgwlc-66287

rgwlc: print new filters and newer-noncurrent elements in radosgw-adm…

Reviewed-by: Casey Bodley <cbodley@redhat.com>
13 months agoMerge pull request #57377 from dang/wip-dang-obj-state
Daniel Gryniewicz [Fri, 31 May 2024 13:42:02 +0000 (09:42 -0400)]
Merge pull request #57377 from dang/wip-dang-obj-state

RGW: Remove RGWObjState and get_obj_state()/put_obj_state() from the SAL API

13 months agoMerge pull request #57697 from petrutlucian94/sv_wait
Ilya Dryomov [Fri, 31 May 2024 11:38:19 +0000 (13:38 +0200)]
Merge pull request #57697 from petrutlucian94/sv_wait

rbd-wnbd: wait for the disk cleanup to complete

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
13 months agorbd-wnbd: wait for the disk cleanup to complete 57697/head
Lucian Petrut [Fri, 24 May 2024 10:03:11 +0000 (10:03 +0000)]
rbd-wnbd: wait for the disk cleanup to complete

The WNBD disk removal workflow is asynchronous, which is why we'll
need to wait for the cleanup to complete when stopping the service.

The "disconnect_all_mappings" function is moved to
RbdMappingDispatcher::stop, allowing us to access the mapping list
more easily and reject new mappings after a stop has been requested.

While at it, we'll log service stop requests.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
13 months agoMerge pull request #57650 from tchaikov/wip-use-importlib
Kefu Chai [Fri, 31 May 2024 08:36:48 +0000 (16:36 +0800)]
Merge pull request #57650 from tchaikov/wip-use-importlib

ceph-volume: use importlib from stdlib on Python 3.8 and up

Reviewed-by: John Mulligan <jmulligan@redhat.com>
13 months agoMerge pull request #57785 from rhcs-dashboard/ssl-file-fix
Nizamudeen A [Fri, 31 May 2024 04:31:44 +0000 (10:01 +0530)]
Merge pull request #57785 from rhcs-dashboard/ssl-file-fix

mgr/dashboard: read cert from in-memory file

Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
13 months agomgr/dashboard: read cert from in-memory file 57785/head
Nizamudeen A [Thu, 30 May 2024 08:06:52 +0000 (13:36 +0530)]
mgr/dashboard: read cert from in-memory file

Fixes: https://tracker.ceph.com/issues/66303
Signed-off-by: Nizamudeen A <nia@redhat.com>
13 months agoMerge pull request #57790 from zdover23/wip-doc-2024-05-30-cephfs-mantle-front-matter
Zac Dover [Thu, 30 May 2024 13:40:32 +0000 (23:40 +1000)]
Merge pull request #57790 from zdover23/wip-doc-2024-05-30-cephfs-mantle-front-matter

doc/cephfs: edit front matter in mantle.rst

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
13 months agodoc/cephfs: edit front matter in mantle.rst 57790/head
Zac Dover [Thu, 30 May 2024 13:28:56 +0000 (23:28 +1000)]
doc/cephfs: edit front matter in mantle.rst

Improve the structure and grammar of the front matter in the
doc/cephfs/mantle.rst file.

Signed-off-by: Zac Dover <zac.dover@proton.me>
13 months agoMerge pull request #57711 from cyx1231st/wip-seastore-fix-incorrent-reclaimable-segments
Yingxin [Thu, 30 May 2024 01:55:22 +0000 (09:55 +0800)]
Merge pull request #57711 from cyx1231st/wip-seastore-fix-incorrent-reclaimable-segments

crimson/os/seastore/async_cleaner: fix incorrect get_num_rolls()

Reviewed-by: Xuehan Xu <xuxuehan@qianxin.com>
13 months agoMerge pull request #57612 from Svelar/asan_rgw_kms
Rongqi Sun [Thu, 30 May 2024 01:31:06 +0000 (09:31 +0800)]
Merge pull request #57612 from Svelar/asan_rgw_kms

rgw_kms: fix Realloc and free cct

13 months agorgwlc: print new filters and newer-noncurrent elements in radosgw-admin lc get 57774/head
Matt Benjamin [Wed, 29 May 2024 16:00:27 +0000 (12:00 -0400)]
rgwlc: print new filters and newer-noncurrent elements in radosgw-admin lc get

Fixes: https://tracker.ceph.com/issues/66287
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
13 months agoMerge pull request #51591 from rhcs-dashboard/add-helpers-pool-compression
Avan [Wed, 29 May 2024 10:46:59 +0000 (16:16 +0530)]
Merge pull request #51591 from rhcs-dashboard/add-helpers-pool-compression

mgr/dashboard: add helpers for compression in pool form

Reviewed-by: Pedro Gonzalez Gomez <pegonzal@redhat.com>
Reviewed-by: afreen23 <NOT@FOUND>
Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
13 months agoMerge pull request #57748 from yuvalif/wip-yuval-test-http
Yuval Lifshitz [Wed, 29 May 2024 09:50:15 +0000 (12:50 +0300)]
Merge pull request #57748 from yuvalif/wip-yuval-test-http

test/rgw/notification: verify network access to http server

Reviewed-By: Ali Masarwe <ali.masarwa@ibm.com>
13 months agoMerge PR #57354 into main
Venky Shankar [Wed, 29 May 2024 09:38:09 +0000 (15:08 +0530)]
Merge PR #57354 into main

* refs/pull/57354/head:
mds: relax divergent backtrace scrub failures for replicated ancestor inodes

Reviewed-by: Kotresh Hiremath Ravishankar <khiremat@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Milind Changire <mchangir@redhat.com>
13 months agoMerge PR #55758 into main
Venky Shankar [Wed, 29 May 2024 09:34:58 +0000 (15:04 +0530)]
Merge PR #55758 into main

* refs/pull/55758/head:
doc: update 'journal reset' command with --yes-i-really-really-mean-it
qa: fix cephfs-journal-tool command options and make fs inactive
cephfs-journal-tool: Add warning messages during 'journal reset' and prevent execution on active fs

Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
13 months agoMerge PR #57291 into main
Venky Shankar [Wed, 29 May 2024 09:32:51 +0000 (15:02 +0530)]
Merge PR #57291 into main

* refs/pull/57291/head:
pybind/mgr/mirroring: Fix KeyError: 'directory_count' in daemon status

Reviewed-by: Rishabh Dave <ridave@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
13 months agoMerge pull request #57694 from zhscn/fix-avl-alloc
Yingxin [Wed, 29 May 2024 07:49:16 +0000 (15:49 +0800)]
Merge pull request #57694 from zhscn/fix-avl-alloc

crimson/os/seastore/rbm/avlallocator: return enough regions when request size is greater than max_alloc_size

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
13 months agoMerge pull request #57753 from zdover23/wip-doc-2024-05-29-doc-dev-perf-counters
Zac Dover [Wed, 29 May 2024 06:10:33 +0000 (16:10 +1000)]
Merge pull request #57753 from zdover23/wip-doc-2024-05-29-doc-dev-perf-counters

doc/dev: add note about intro of perf counters

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
13 months agoMerge pull request #57729 from idryomov/wip-66232
Ilya Dryomov [Tue, 28 May 2024 19:04:51 +0000 (21:04 +0200)]
Merge pull request #57729 from idryomov/wip-66232

qa/suites/rbd: override extra_system_packages directly on install task

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
13 months agoMerge PR #57688 into main
Patrick Donnelly [Tue, 28 May 2024 18:00:17 +0000 (14:00 -0400)]
Merge PR #57688 into main

* refs/pull/57688/head:
tools/first-damage: Don't skip stray directory object

Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
13 months agoMerge PR #57579 into main
Patrick Donnelly [Tue, 28 May 2024 16:46:08 +0000 (12:46 -0400)]
Merge PR #57579 into main

* refs/pull/57579/head:
mds/quiesce: disable quiesce root debug parameters by default
mds/quiesce-agt: never send a synchronous ack
mds/quiesce-agt: add test for a rapid async ack
mds/quiesce: always abort fragmenting asynchronously to prevent reentrancy
mds/quiesce: overdrive an export if it hasn't frozen the tree yet
mds/quiesce: quiesce_inode should not hold on to remote auth pins
qa/cephfs: check that a completed quiesce doesn't hold remote auth pins
mds: add `--lifetime` parameter to the `lock path` asok command
mds/quiesce: accept a regular file as the quiesce root
mds: command_quiesce_path: rename `--wait` to `--await` for consistency
mds: command_quiesce_path: do not block the asok thread and return an adequate rc

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
13 months agodoc/dev: add note about intro of perf counters 57753/head
Zac Dover [Tue, 28 May 2024 16:27:53 +0000 (02:27 +1000)]
doc/dev: add note about intro of perf counters

Add a note to the "perf counter" section of doc/dev/perf_counters.rst
that explains that this feature was introduced in the Reef release of
Ceph. This note will prevent us from accidentally backporting
perf-counter-related PRs to Quincy.

Signed-off-by: Zac Dover <zac.dover@proton.me>
13 months agoRGW: Rename rgw::sal::Object::get_obj_size() to get_size() 57377/head
Daniel Gryniewicz [Thu, 9 May 2024 16:21:54 +0000 (12:21 -0400)]
RGW: Rename rgw::sal::Object::get_obj_size() to get_size()

Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
13 months agoRGW: Remove get_obj_state()/set_obj_state from SAL
Daniel Gryniewicz [Thu, 9 May 2024 14:47:28 +0000 (10:47 -0400)]
RGW: Remove get_obj_state()/set_obj_state from SAL

RGWObjState is the state for the StoreObject class.  It has historically
been accessible via get_obj_state()/set_obj_state(), but the double
pointer nature of this access has caused multiple bugs, and the
RGWObjState itself is an implementation detail that doesn't need to be
exposed.

Instead, add a load_obj_state() that loads the state from the store, and
use proper getters/setters for the data.

Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
13 months agoMerge pull request #57462 from rhcs-dashboard/rgw-policy-group
Nizamudeen A [Tue, 28 May 2024 16:06:10 +0000 (21:36 +0530)]
Merge pull request #57462 from rhcs-dashboard/rgw-policy-group

mgr/dashboard: rgw policy group management api

Reviewed-by: Pedro Gonzalez Gomez <pegonzal@redhat.com>
Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
13 months agoMerge pull request #57655 from AliMasarweh/wip-alimasa-bn-correct-reload
Ali Masarwa [Tue, 28 May 2024 15:42:29 +0000 (18:42 +0300)]
Merge pull request #57655 from AliMasarweh/wip-alimasa-bn-correct-reload

RGW|Bucket notification: reload realm correctly

Reviewed-by: yuvalif<ylifshit@redhat.com>
13 months agoMerge pull request #57732 from rishabh-d-dave/doc-dev-teuth
Zac Dover [Tue, 28 May 2024 14:53:25 +0000 (00:53 +1000)]
Merge pull request #57732 from rishabh-d-dave/doc-dev-teuth

doc/developer_guide: update doc about installing teuthology

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
13 months agotest/rgw/notification: verify network access to http server 57748/head
Yuval Lifshitz [Tue, 28 May 2024 13:47:30 +0000 (13:47 +0000)]
test/rgw/notification: verify network access to http server

Signed-off-by: Yuval Lifshitz <ylifshit@ibm.com>
13 months agodoc/developer_guide: update doc about installing teuthology 57732/head
Rishabh Dave [Mon, 27 May 2024 19:37:35 +0000 (01:07 +0530)]
doc/developer_guide: update doc about installing teuthology

There are 2 more ways to install teuthology. Approach with boostrap
script is easier and more convenient while other approach is more
elaborate but manual, document both of them. Don't delete the currently
documented approach because it lets users install teuthology
conveniently in a custom virtual environment. So, keep all three.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
13 months agoMerge pull request #57070 from rhcs-dashboard/fix-read-only-landing-page
Pedro Gonzalez Gomez [Tue, 28 May 2024 10:53:11 +0000 (12:53 +0200)]
Merge pull request #57070 from rhcs-dashboard/fix-read-only-landing-page

mgr/dashboard: fix readonly landingpage

Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
Reviewed-by: ivoalmeida <NOT@FOUND>
Reviewed-by: Nizamudeen A <nia@redhat.com>
13 months agoMerge pull request #57720 from zdover23/wip-doc-2024-05-27-cephfs-fs-volumes
Zac Dover [Tue, 28 May 2024 10:14:22 +0000 (20:14 +1000)]
Merge pull request #57720 from zdover23/wip-doc-2024-05-27-cephfs-fs-volumes

doc/cephfs: s/subvolumegroups/subvolume groups

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
13 months agoMerge pull request #57638 from yuvalif/wip-yuval-66033
Yuval Lifshitz [Tue, 28 May 2024 07:33:23 +0000 (10:33 +0300)]
Merge pull request #57638 from yuvalif/wip-yuval-66033

test/rgw/notifications: allow http server to buffer more requests

Reviewed-By: Casey Bodley <cbodley@ibm.com>
13 months agomgr/dashboard: manage flow and pipes apis 57462/head
Nizamudeen A [Tue, 14 May 2024 09:53:36 +0000 (15:23 +0530)]
mgr/dashboard: manage flow and pipes apis

Fixes: https://tracker.ceph.com/issues/66238
Signed-off-by: Nizamudeen A <nia@redhat.com>
13 months agomgr/dashboard: rgw policy group management api
Nizamudeen A [Tue, 14 May 2024 09:01:43 +0000 (14:31 +0530)]
mgr/dashboard: rgw policy group management api

Fixes: https://tracker.ceph.com/issues/66238
Signed-off-by: Nizamudeen A <nia@redhat.com>
13 months agoMerge pull request #57700 from tchaikov/wip-mgr-prometheus-packaging
Kefu Chai [Tue, 28 May 2024 01:08:04 +0000 (09:08 +0800)]
Merge pull request #57700 from tchaikov/wip-mgr-prometheus-packaging

mgr/prometheus: s/pkg_resources.packaging/packaging/

Reviewed-by: Redouane Kachach <rkachach@redhat.com>
13 months agoqa/suites/rbd: override extra_system_packages directly on install task 57729/head
Ilya Dryomov [Mon, 27 May 2024 13:56:26 +0000 (15:56 +0200)]
qa/suites/rbd: override extra_system_packages directly on install task

[1] and [2] added support for applying extra_system_packages overrides
directly on install task, but at the same time broke our long standing
workaround where we sneaked extra_system_packages directive in through
an override on ceph task.  This is likely getting addressed in [3], but
it's better to not rely on this odd feature in the first place.

[1] https://github.com/ceph/teuthology/pull/1941
[2] https://github.com/ceph/teuthology/pull/1943
[3] https://github.com/ceph/teuthology/pull/1942

Fixes: https://tracker.ceph.com/issues/66232
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
13 months agoMerge pull request #57671 from idryomov/wip-labeler-qa
Ilya Dryomov [Mon, 27 May 2024 14:12:20 +0000 (16:12 +0200)]
Merge pull request #57671 from idryomov/wip-labeler-qa

.github: expand tests label to all files under qa

Reviewed-by: Ramana Raja <rraja@redhat.com>
13 months agoMerge pull request #57628 from joscollin/wip-B66173-doc-per-client-metrics
Zac Dover [Mon, 27 May 2024 12:59:06 +0000 (22:59 +1000)]
Merge pull request #57628 from joscollin/wip-B66173-doc-per-client-metrics

doc: document metrics exported by CephFS

Reviewed-by: Zac Dover <zac.dover@proton.me>
13 months agodoc/cephfs: s/subvolumegroups/subvolume groups 57720/head
Zac Dover [Mon, 27 May 2024 11:09:40 +0000 (21:09 +1000)]
doc/cephfs: s/subvolumegroups/subvolume groups

Use the term "subvolume groups" instead of "subvolumegroups" where the
term appears in plain English. The string "subvolumegroups" is correct
in commands, and remains unchanged.

Also add formatting to command output, to make clearer that the output
is indeed output.

Fixes: https://github.com/ceph/ceph/pull/57574#discussion_r1606988766
Signed-off-by: Zac Dover <zac.dover@proton.me>
13 months agomgr/dashboard: add helpers for compression in pool form 51591/head
avanthakkar [Fri, 19 May 2023 11:37:28 +0000 (17:07 +0530)]
mgr/dashboard: add helpers for compression in pool form

Fixes: https://tracker.ceph.com/issues/61297
Signed-off-by: avanthakkar <avanjohn@gmail.com>
Adding helpers for compression mode, algorithm, min/max blob size and
compression ratio which is set to 0.875 as default.

13 months agodoc: document metrics exported by CephFS 57628/head
Jos Collin [Wed, 22 May 2024 12:40:24 +0000 (18:10 +0530)]
doc: document metrics exported by CephFS

Fixes: https://tracker.ceph.com/issues/66173
Signed-off-by: Jos Collin <jcollin@redhat.com>
13 months agocrimson/os/seastore/async_cleaner: fix incorrect get_num_rolls() 57711/head
Yingxin Cheng [Mon, 27 May 2024 02:16:41 +0000 (10:16 +0800)]
crimson/os/seastore/async_cleaner: fix incorrect get_num_rolls()

The number of journal segments should not be based on the committed
journal_head. Otherwise, if a new journal segment is just opened and the
committed journal_head hasn't been updated, the result will be wrong.

This causes ceph_assert(get_segments_reclaimable() == 0) in
SegmentCleaner::get_next_reclaim_segment().

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
13 months agoMerge pull request #57584 from rhcs-dashboard/dashboard-pendingreleasenotes 57721/head
Nizamudeen A [Mon, 27 May 2024 04:51:12 +0000 (00:51 -0400)]
Merge pull request #57584 from rhcs-dashboard/dashboard-pendingreleasenotes

doc: Update pendingreleasenotes for dashboard

Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
Reviewed-by: Zac Dover <zac.dover@gmail.com>
13 months agomds/quiesce: disable quiesce root debug parameters by default 57579/head
Leonid Usov [Sun, 26 May 2024 11:33:55 +0000 (14:33 +0300)]
mds/quiesce: disable quiesce root debug parameters by default

Fixes: https://tracker.ceph.com/issues/66225
Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
13 months agomds/quiesce-agt: never send a synchronous ack
Leonid Usov [Sun, 26 May 2024 08:16:48 +0000 (11:16 +0300)]
mds/quiesce-agt: never send a synchronous ack

Defer to the agent thread to perform all acking.
This avoids race conditions between the updating thread
and the acking thread.

Fixes: https://tracker.ceph.com/issues/66219
Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
13 months agomds/quiesce-agt: add test for a rapid async ack
Leonid Usov [Sat, 25 May 2024 13:35:31 +0000 (16:35 +0300)]
mds/quiesce-agt: add test for a rapid async ack

In this scenario, the agent thread is able to run and generate an ack
before the db_update call returns to the caller.

Fixes: https://tracker.ceph.com/issues/66219
Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
13 months agomds/quiesce: always abort fragmenting asynchronously to prevent reentrancy
Leonid Usov [Thu, 23 May 2024 13:45:13 +0000 (16:45 +0300)]
mds/quiesce: always abort fragmenting asynchronously to prevent reentrancy

Fixes: https://tracker.ceph.com/issues/66208
Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
13 months agomds/quiesce: overdrive an export if it hasn't frozen the tree yet
Leonid Usov [Mon, 20 May 2024 16:17:04 +0000 (19:17 +0300)]
mds/quiesce: overdrive an export if it hasn't frozen the tree yet

Just like with the fragmenting, we should abort an ongoing export
if a quiesce is attempted for the directory.

To minimize the stress for the system, we only allow the abort
if the export hasn't yet managed to freeze the tree. If that is the case,
then quiesce will have to wait for the export to finish.

Fixes: https://tracker.ceph.com/issues/66123
Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
13 months agomds/quiesce: quiesce_inode should not hold on to remote auth pins
Leonid Usov [Mon, 20 May 2024 22:03:15 +0000 (01:03 +0300)]
mds/quiesce: quiesce_inode should not hold on to remote auth pins

1. avoid taking a remote authpin for the quiesce lock
2. drop remote authpins that were taken because of other locks

We should not be forcing a mustpin when taking quiesce lock.
This creates unnecessary overhead due to the distributed nature
of the quiesce: all ranks will execute quiesce_inode, including
the auth rank, which will authpin the inode.

Auth pinning on the auth rank is important to synchronize quiesce
with operations that are managed by the auth, like fragmenting
and exporting.

If we let a remote quiesce process take a foreign authpin then
it may block freezing on the auth, which will stall quiesce locally.
This wouldn't be a problem if the quiesce that is blocked on the auth
and the quiesce that's holding a remote authpin from the replica side
were unrelated, but in our case it may be the same logical quiesce
that effectively steps on its own toes. This creates an opportunity
for a deadlock.

Fixes: https://tracker.ceph.com/issues/66152
Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
13 months agoqa/cephfs: check that a completed quiesce doesn't hold remote auth pins
Leonid Usov [Wed, 22 May 2024 11:46:50 +0000 (14:46 +0300)]
qa/cephfs: check that a completed quiesce doesn't hold remote auth pins

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
13 months agomds: add `--lifetime` parameter to the `lock path` asok command
Leonid Usov [Wed, 22 May 2024 08:00:13 +0000 (11:00 +0300)]
mds: add `--lifetime` parameter to the `lock path` asok command

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
13 months agomds/quiesce: accept a regular file as the quiesce root
Leonid Usov [Wed, 22 May 2024 09:19:08 +0000 (12:19 +0300)]
mds/quiesce: accept a regular file as the quiesce root

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
13 months agomds: command_quiesce_path: rename `--wait` to `--await` for consistency
Leonid Usov [Wed, 22 May 2024 18:35:51 +0000 (21:35 +0300)]
mds: command_quiesce_path: rename `--wait` to `--await` for consistency

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
13 months agomds: command_quiesce_path: do not block the asok thread and return an adequate rc
Leonid Usov [Wed, 22 May 2024 11:45:09 +0000 (14:45 +0300)]
mds: command_quiesce_path: do not block the asok thread and return an adequate rc

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
13 months agoceph-volume: use importlib from stdlib on Python 3.8 and up 57650/head
Kefu Chai [Thu, 23 May 2024 04:47:26 +0000 (12:47 +0800)]
ceph-volume: use importlib from stdlib on Python 3.8 and up

since packaging was apparently removed from pkg_resources, let's use
importlib.metadata when it is available and pkg_resources on older
Python versions.

Refs https://tracker.ceph.com/issues/66201
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
13 months agoMerge PR #57393 into main
Patrick Donnelly [Sun, 26 May 2024 00:51:35 +0000 (20:51 -0400)]
Merge PR #57393 into main

* refs/pull/57393/head:
doc/man: add missing long option switches

Reviewed-by: Anthony D Atri <anthony.datri@gmail.com>
13 months agoMerge pull request #57609 from Svelar/asan_rbd_mirror
Ilya Dryomov [Sat, 25 May 2024 21:42:07 +0000 (23:42 +0200)]
Merge pull request #57609 from Svelar/asan_rbd_mirror

test/rbd-mirror: free remote_journaler in PrepareRemoteImageRequest tests

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
13 months agoMerge pull request #56033 from yuvalif/wip-yuval-kafka-cleanup
Yuval Lifshitz [Sat, 25 May 2024 15:29:05 +0000 (18:29 +0300)]
Merge pull request #56033 from yuvalif/wip-yuval-kafka-cleanup

rgw/kafka: do not destroy the connection on errors

Reviewed-By: Krunal Chheda <kchheda3@bloomberg.net>, Casey Bodley <cbodley@ibm.com>
13 months agoMerge pull request #57701 from zdover23/wip-doc-2024-05-25-cephfs-fs-volumes
Anthony D'Atri [Sat, 25 May 2024 13:48:39 +0000 (09:48 -0400)]
Merge pull request #57701 from zdover23/wip-doc-2024-05-25-cephfs-fs-volumes

doc/cephfs: disambiguate two sentences

13 months agodoc/cephfs: disambiguate two sentences 57701/head
Zac Dover [Sat, 25 May 2024 08:41:03 +0000 (18:41 +1000)]
doc/cephfs: disambiguate two sentences

Rewrite two sentences so that they are unambgiuously in the indicative
mood and not, as they previously seemed, in the imperative mood.

Signed-off-by: Zac Dover <zac.dover@proton.me>
13 months agotest/rbd: free remote_journaler in PrepareRemoteImageRequest tests 57609/head
Rongqi Sun [Wed, 22 May 2024 06:47:50 +0000 (06:47 +0000)]
test/rbd: free remote_journaler in PrepareRemoteImageRequest tests

When sanitizer is enabled, unittest_rbd_mirror shows

```
=================================================================
==1377627==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 2 byte(s) in 2 object(s) allocated from:
    #0 0xaaaac462d088 in operator new(unsigned long) (/root/ceph/build/bin/unittest_rbd_mirror+0x30cd088) (BuildId: 054d3b6699c622daad91c7f70e36616220fbd5ad)
    #1 0xaaaac522f13c in rbd::mirror::image_replayer::PrepareRemoteImageRequest<librbd::(anonymous namespace)::MockTestImageCtx>::get_client() /root/ceph/src/tools/rbd_mirror/image_replayer/PrepareRemoteImageRequest.cc:148:24
    #2 0xaaaac522e60c in rbd::mirror::image_replayer::PrepareRemoteImageRequest<librbd::(anonymous namespace)::MockTestImageCtx>::handle_get_mirror_info(int) /root/ceph/src/tools/rbd_mirror/image_replayer/PrepareRemoteImageRequest.cc:120:5
    #3 0xaaaac5232d1c in librbd::util::detail::C_CallbackAdapter<rbd::mirror::image_replayer::PrepareRemoteImageRequest<librbd::(anonymous namespace)::MockTestImageCtx>, &(rbd::mirror::image_replayer::PrepareRemoteImageRequest<librbd::(anonymous namespace)::MockTestImageCtx>::handle_get_mirror_info(int))>::finish(int) /root/ceph/src/librbd/Utils.h:63:5
    #4 0xaaaac4863428 in Context::complete(int) /root/ceph/src/include/Context.h:99:5
    #5 0xaaaac489ac30 in librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()::operator()() const /root/ceph/src/librbd/asio/ContextWQ.h:31:12
    #6 0xaaaac489aaf4 in boost::asio::detail::binder0<librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()>::operator()() /root/ceph/build/boost/include/boost/asio/detail/bind_handler.hpp:60:5
    #7 0xaaaac489aaac in void boost::asio::asio_handler_invoke<boost::asio::detail::binder0<librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()> >(boost::asio::detail::binder0<librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()>&, ...) /root/ceph/build/boost/include/boost/asio/handler_invoke_hook.hpp:88:3
    #8 0xaaaac489aa4c in void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder0<librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()>, librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()>(boost::asio::detail::binder0<librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()>&, librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()&) /root/ceph/build/boost/include/boost/asio/detail/handler_invoke_helpers.hpp:54:3
    #9 0xaaaac489a9ec in void boost::asio::detail::asio_handler_invoke<boost::asio::detail::binder0<librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()>, librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()>(boost::asio::detail::binder0<librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()>&, boost::asio::detail::binder0<librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()>*) /root/ceph/build/boost/include/boost/asio/detail/bind_handler.hpp:111:3
    #10 0xaaaac4899c00 in void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder0<librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()>, boost::asio::detail::binder0<librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()> >(boost::asio::detail::binder0<librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()>&, boost::asio::detail::binder0<librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()>&) /root/ceph/build/boost/include/boost/asio/detail/handler_invoke_helpers.hpp:54:3
    #11 0xaaaac489c814 in boost::asio::detail::executor_op<boost::asio::detail::binder0<librbd::asio::ContextWQ::queue(Context*, int)::'lambda'()>, std::allocator<void>, boost::asio::detail::scheduler_operation>::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) /root/ceph/build/boost/include/boost/asio/detail/executor_op.hpp:71:7
    #12 0xaaaac489fb4c in boost::asio::detail::scheduler_operation::complete(void*, boost::system::error_code const&, unsigned long) /root/ceph/build/boost/include/boost/asio/detail/scheduler_operation.hpp:40:5
    #13 0xaaaac489f074 in boost::asio::detail::strand_executor_service::run_ready_handlers(std::shared_ptr<boost::asio::detail::strand_executor_service::strand_impl>&) /root/ceph/build/boost/include/boost/asio/detail/impl/strand_executor_service.ipp:150:8
    #14 0xaaaac489ed2c in boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::basic_executor_type<std::allocator<void>, 0ul> const, void>::operator()() /root/ceph/build/boost/include/boost/asio/detail/impl/strand_executor_service.hpp:136:5
    #15 0xaaaac489ebd4 in void boost::asio::asio_handler_invoke<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::basic_executor_type<std::allocator<void>, 0ul> const, void> >(boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::basic_executor_type<std::allocator<void>, 0ul> const, void>&, ...) /root/ceph/build/boost/include/boost/asio/handler_invoke_hook.hpp:88:3
    #16 0xaaaac489e284 in void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::basic_executor_type<std::allocator<void>, 0ul> const, void>, boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::basic_executor_type<std::allocator<void>, 0ul> const, void> >(boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::basic_executor_type<std::allocator<void>, 0ul> const, void>&, boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::basic_executor_type<std::allocator<void>, 0ul> const, void>&) /root/ceph/build/boost/include/boost/asio/detail/handler_invoke_helpers.hpp:54:3
    #17 0xaaaac48a3e08 in boost::asio::detail::executor_op<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::basic_executor_type<std::allocator<void>, 0ul> const, void>, std::allocator<void>, boost::asio::detail::scheduler_operation>::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) /root/ceph/build/boost/include/boost/asio/detail/executor_op.hpp:71:7
    #18 0xaaaac489fb4c in boost::asio::detail::scheduler_operation::complete(void*, boost::system::error_code const&, unsigned long) /root/ceph/build/boost/include/boost/asio/detail/scheduler_operation.hpp:40:5
    #19 0xaaaac6766b1c in boost::asio::detail::scheduler::do_run_one(boost::asio::detail::conditionally_enabled_mutex::scoped_lock&, boost::asio::detail::scheduler_thread_info&, boost::system::error_code const&) /root/ceph/build/boost/include/boost/asio/detail/impl/scheduler.ipp:493:12
    #20 0xaaaac67660a4 in boost::asio::detail::scheduler::run(boost::system::error_code&) /root/ceph/build/boost/include/boost/asio/detail/impl/scheduler.ipp:210:10
    #21 0xaaaac7562d48 in boost::asio::io_context::run() /root/ceph/build/boost/include/boost/asio/impl/io_context.ipp:64:24
    #22 0xaaaac7562bcc in ceph::async::io_context_pool::start(short)::'lambda'()::operator()() const /root/ceph/src/common/async/context_pool.h:69:16
    #23 0xaaaac7562b18 in void std::__invoke_impl<void, ceph::async::io_context_pool::start(short)::'lambda'()>(std::__invoke_other, ceph::async::io_context_pool::start(short)::'lambda'()&&) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:61:14
    #24 0xaaaac7562960 in std::__invoke_result<ceph::async::io_context_pool::start(short)::'lambda'()>::type std::__invoke<ceph::async::io_context_pool::start(short)::'lambda'()>(ceph::async::io_context_pool::start(short)::'lambda'()&&) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:96:14
    #25 0xaaaac7562804 in std::invoke_result<ceph::async::io_context_pool::start(short)::'lambda'()>::type std::invoke<ceph::async::io_context_pool::start(short)::'lambda'()>(ceph::async::io_context_pool::start(short)::'lambda'()&&) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/functional:97:14
    #26 0xaaaac75627dc in auto std::thread make_named_thread<ceph::async::io_context_pool::start(short)::'lambda'()>(std::basic_string_view<char, std::char_traits<char> >, ceph::async::io_context_pool::start(short)::'lambda'()&&)::'lambda'(ceph::async::io_context_pool::start(short)::'lambda'()&&)::operator()<ceph::async::io_context_pool::start(short)::'lambda'()>(ceph::async::io_context_pool::start(short)::'lambda'()&&) const /root/ceph/src/common/Thread.h:79:10
    #27 0xaaaac7562728 in ceph::async::io_context_pool::start(short)::'lambda'() std::__invoke_impl<void, std::thread make_named_thread<ceph::async::io_context_pool::start(short)::'lambda'()>(std::basic_string_view<char, std::char_traits<char> >, ceph::async::io_context_pool::start(short)::'lambda'()&&)::'lambda'(ceph::async::io_context_pool::start(short)::'lambda'()&&), ceph::async::io_context_pool::start(short)::'lambda'()>(std::__invoke_other, std::thread make_named_thread<ceph::async::io_context_pool::start(short)::'lambda'()>(std::basic_string_view<char, std::char_traits<char> >, ceph::async::io_context_pool::start(short)::'lambda'()&&)::'lambda'(ceph::async::io_context_pool::start(short)::'lambda'()&&)&&, ceph::async::io_context_pool::start(short)::'lambda'()&&) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:61:14
    #28 0xaaaac75624ec in std::__invoke_result<ceph::async::io_context_pool::start(short)::'lambda'()>::type std::__invoke<std::thread make_named_thread<ceph::async::io_context_pool::start(short)::'lambda'()>(std::basic_string_view<char, std::char_traits<char> >, ceph::async::io_context_pool::start(short)::'lambda'()&&)::'lambda'(ceph::async::io_context_pool::start(short)::'lambda'()&&), ceph::async::io_context_pool::start(short)::'lambda'()>(ceph::async::io_context_pool::start(short)::'lambda'()&&) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:96:14
    #29 0xaaaac756231c in void std::thread::_Invoker<std::tuple<std::thread make_named_thread<ceph::async::io_context_pool::start(short)::'lambda'()>(std::basic_string_view<char, std::char_traits<char> >, ceph::async::io_context_pool::start(short)::'lambda'()&&)::'lambda'(ceph::async::io_context_pool::start(short)::'lambda'()&&), ceph::async::io_context_pool::start(short)::'lambda'()> >::_M_invoke<0ul, 1ul>(std::_Index_tuple<0ul, 1ul>) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/std_thread.h:259:13

SUMMARY: AddressSanitizer: 2 byte(s) leaked in 2 allocation(s).
```

Signed-off-by: Rongqi Sun <sunrongqi@huawei.com>
13 months agoMerge pull request #57693 from tchaikov/cmake-shec_utils
Kefu Chai [Sat, 25 May 2024 07:57:27 +0000 (15:57 +0800)]
Merge pull request #57693 from tchaikov/cmake-shec_utils

cmake: : link shec_utils against legacy-option-headers

Reviewed-by: Casey Bodley <cbodley@redhat.com>
13 months agomgr/prometheus: s/pkg_resources.packaging/packaging/ 57700/head
Kefu Chai [Sat, 25 May 2024 05:50:43 +0000 (13:50 +0800)]
mgr/prometheus: s/pkg_resources.packaging/packaging/

instead of relying on the internal implementation of pkg_resources,
let's import packaging directly.

in this change, we also add the dependency to the packaging module
in the packaging recipes.

See also https://github.com/pypa/setuptools/issues/4385

Fixes https://tracker.ceph.com/issues/66201
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
13 months agoMerge PR #57686 into main
Patrick Donnelly [Fri, 24 May 2024 20:43:40 +0000 (16:43 -0400)]
Merge PR #57686 into main

* refs/pull/57686/head:
script/ceph-backport: update Ceph PR id

Reviewed-by: Leonid Usov <leonid.usov@ibm.com>
13 months agoMerge pull request #57689 from kotreshhr/fix_unpack_first_damage
Venky Shankar [Fri, 24 May 2024 10:41:57 +0000 (16:11 +0530)]
Merge pull request #57689 from kotreshhr/fix_unpack_first_damage

tools/first-damage: Fix struct unpack

Reviewed-by: Venky Shankar <vshankar@redhat.com>
13 months agocrimson/os/seastore/rbm/avlallocator: return enough regions when request size is... 57694/head
Zhang Song [Fri, 24 May 2024 09:56:48 +0000 (17:56 +0800)]
crimson/os/seastore/rbm/avlallocator: return enough regions when request size is greater than max_alloc_size

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
13 months agocmake: : link shec_utils against legacy-option-headers 57693/head
Kefu Chai [Fri, 24 May 2024 09:51:55 +0000 (17:51 +0800)]
cmake: : link shec_utils against legacy-option-headers

in c24a6ffe20, we tried to link all target dependent on legacy option
headers against legacy-option-headers, but we missed some of them.
in our CI, we spotted build failure like:
```
In file included from /home/jenkins-build/build/workspace/ceph-pull-requests/src/erasure-code/ErasureCode.cc:26:
In file included from /home/jenkins-build/build/workspace/ceph-pull-requests/src/osd/osd_types.h:41:
In file included from /home/jenkins-build/build/workspace/ceph-pull-requests/src/common/ceph_context.h:41:
In file included from /home/jenkins-build/build/workspace/ceph-pull-requests/src/common/config_proxy.h:6:
In file included from /home/jenkins-build/build/workspace/ceph-pull-requests/src/common/config.h:27:
In file included from /home/jenkins-build/build/workspace/ceph-pull-requests/src/common/config_values.h:59:
/home/jenkins-build/build/workspace/ceph-pull-requests/src/common/options/legacy_config_opts.h:1:10: fatal error: 'global_legacy_options.h' file not found
         ^~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
```
so in this change, we link the shec_utils to `legacy-option-headers`
as well to fulfill the build dependency.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
13 months agotools/first-damage: Fix struct unpack 57689/head
Kotresh HR [Fri, 24 May 2024 08:08:24 +0000 (13:38 +0530)]
tools/first-damage: Fix struct unpack

The first field is a 64 bit integer, the script
was unpacking it as 32 bit integer. Fixed the
same.

Also printing the 'first' value in debug

Signed-off-by: Kotresh HR <khiremat@redhat.com>
13 months agotools/first-damage: Don't skip stray directory object 57688/head
Kotresh HR [Fri, 24 May 2024 07:02:32 +0000 (12:32 +0530)]
tools/first-damage: Don't skip stray directory object

Signed-off-by: Kotresh HR <khiremat@redhat.com>
13 months agoMerge pull request #57654 from zhscn/fix-error
Yingxin [Fri, 24 May 2024 02:28:55 +0000 (10:28 +0800)]
Merge pull request #57654 from zhscn/fix-error

crimson/os/seastore: fix compile error in release build

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
13 months agoMerge pull request #57656 from Matan-B/wip-matanb-crimson-get-param
Yingxin [Fri, 24 May 2024 01:39:27 +0000 (09:39 +0800)]
Merge pull request #57656 from Matan-B/wip-matanb-crimson-get-param

test/crimson/seastore/transaction_manager_test_state: fix compilation…

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
13 months agoscript/ceph-backport: update Ceph PR id 57686/head
Patrick Donnelly [Fri, 24 May 2024 00:51:15 +0000 (20:51 -0400)]
script/ceph-backport: update Ceph PR id

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
13 months agoMerge pull request #57188 from cbodley/wip-boost-asio-yield-group
Casey Bodley [Thu, 23 May 2024 17:22:24 +0000 (18:22 +0100)]
Merge pull request #57188 from cbodley/wip-boost-asio-yield-group

common/async: add primitives for structured concurrency with optional_yield

Reviewed-by: Adam Emerson <aemerson@redhat.com>
13 months agoMerge pull request #57630 from cbodley/wip-boost-asio-spawn-unlock
Casey Bodley [Thu, 23 May 2024 17:15:41 +0000 (18:15 +0100)]
Merge pull request #57630 from cbodley/wip-boost-asio-spawn-unlock

rgw/pubsub: Waiter unlocks before suspend

Reviewed-by: Yuval Lifshitz <ylifshit@redhat.com>
13 months ago.github: expand tests label to all files under qa 57671/head
Ilya Dryomov [Thu, 23 May 2024 16:15:08 +0000 (18:15 +0200)]
.github: expand tests label to all files under qa

The test job definition under qa/suites is an integral part of almost
any test.  Often, the test logic is split between the task or workunit
and respective snippet(s) under qa/suites.

Other files under qa are less used, but still related to nothing but
testing, so just add the label on all of it.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
13 months agoRGW|Bucket notification: disable notif v2 to reload realm correctly 57655/head
Ali Masarwa [Thu, 23 May 2024 11:08:56 +0000 (14:08 +0300)]
RGW|Bucket notification: disable notif v2 to reload realm correctly

Signed-off-by: Ali Masarwa <amasarwa@redhat.com>
13 months agoMerge pull request #57554 from zdover23/wip-doc-2024-05-20-cephfs-fs-volumes-fs-subvo...
Zac Dover [Thu, 23 May 2024 14:47:54 +0000 (00:47 +1000)]
Merge pull request #57554 from zdover23/wip-doc-2024-05-20-cephfs-fs-volumes-fs-subvolumes-sections

doc/cephfs: separate commands into sections

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
13 months agoMerge pull request #57567 from zdover23/wip-doc-2024-05-20-cephfs-fs-volumes-cloning...
Zac Dover [Thu, 23 May 2024 14:21:54 +0000 (00:21 +1000)]
Merge pull request #57567 from zdover23/wip-doc-2024-05-20-cephfs-fs-volumes-cloning-snapshots

doc/cephfs: edit "Cloning Snapshots" in fs-volumes.rst

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
13 months agoMerge pull request #57574 from zdover23/wip-doc-2024-05-21-cephfs-fs-volumes-pinning...
Zac Dover [Thu, 23 May 2024 14:14:00 +0000 (00:14 +1000)]
Merge pull request #57574 from zdover23/wip-doc-2024-05-21-cephfs-fs-volumes-pinning-subvolumes

doc/cephfs: edit "Pinning Subvolumes..."

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
13 months agocommon/async: add max_concurrent_for_each() algorithm 57188/head
Casey Bodley [Thu, 9 May 2024 17:00:57 +0000 (13:00 -0400)]
common/async: add max_concurrent_for_each() algorithm

inspired by seastar's max_concurrent_for_each(), implemented for
optional_yield in terms of yield_throttle

can also be overloaded for co_await() and co_throttle (not part of this
branch)

Signed-off-by: Casey Bodley <cbodley@redhat.com>
13 months agomgr/dashboard: fix readonly landingpage 57070/head
Pedro Gonzalez Gomez [Wed, 24 Apr 2024 08:48:11 +0000 (10:48 +0200)]
mgr/dashboard: fix readonly landingpage

Fixes: https://tracker.ceph.com/issues/65643
Signed-off-by: Pedro Gonzalez Gomez <pegonzal@redhat.com>
13 months agotest/crimson/seastore/transaction_manager_test_state: fix compilation error 57656/head
Matan Breizman [Thu, 23 May 2024 11:06:41 +0000 (11:06 +0000)]
test/crimson/seastore/transaction_manager_test_state: fix compilation error

Introduced in: https://github.com/ceph/ceph/commit/898efa78e2cde90a2bdf8e6f7eda1d4def736705

Followup: https://github.com/ceph/ceph/pull/53433

```
FAILED: src/crimson/tools/CMakeFiles/perf-staged-fltree.dir/perf_staged_fltree.cc.o
 error: ‘GetParam’ was not declared in this scope
  287 |     if (std::get<1>(GetParam()) == integrity_check_t::FULL_CHECK) {
      |                     ^~~~~~~~
/home/yogisha/ceph/src/test/crimson/seastore/transaction_manager_test_state.h: In member function ‘virtual seastar::future<> SeaStoreTestState::_init()’:
/home/yogisha/ceph/src/test/crimson/seastore/transaction_manager_test_state.h:439:21: error: ‘GetParam’ was not declared in this scope
  439 |     if (std::get<1>(GetParam()) == integrity_check_t::FULL_CHECK) {
      |                     ^~~~~~~~
```

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
13 months agoMerge pull request #57639 from yuvalif/wip-yuval-skip-reload-tests
Yuval Lifshitz [Thu, 23 May 2024 10:54:29 +0000 (13:54 +0300)]
Merge pull request #57639 from yuvalif/wip-yuval-skip-reload-tests

test/rgw/notifications: skip reload tests when there is no realm

Reviewed-By: ali.masarwa@ibm.com
13 months agocrimson/os/seastore: fix compile error in release build 57654/head
Zhang Song [Thu, 23 May 2024 09:12:06 +0000 (17:12 +0800)]
crimson/os/seastore: fix compile error in release build

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
13 months agorgw_kms: fix Realloc and free cct 57612/head
Rongqi Sun [Wed, 22 May 2024 07:41:42 +0000 (07:41 +0000)]
rgw_kms: fix Realloc and free cct

When sanitizer is enabled, unittest_rgw_kms shows,

```
=================================================================
==1415137==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 768 byte(s) in 1 object(s) allocated from:
    #0 0xaaaacb1381e0 in malloc (/root/ceph/build/bin/unittest_rgw_kms+0x4b81e0) (BuildId: 2005acbecb5cbd5bc928c98209bd613f20ecbacf)
    #1 0xaaaacb1ed768 in ZeroPoolAllocator::Realloc(void*, unsigned long, unsigned long) /root/ceph/src/rgw/rgw_kms.cc:84:14
    #2 0xaaaacb1ed728 in rapidjson::GenericMember<rapidjson::UTF8<char>, ZeroPoolAllocator>* rapidjson::Realloc<rapidjson::GenericMember<rapidjson::UTF8<char>, ZeroPoolAllocator>, ZeroPoolAllocator>(ZeroPoolAllocator&, rapidjson::GenericMember<rapidjson::UTF8<char>, ZeroPoolAllocator>*, unsigned long, unsigned long) /root/ceph/src/s3select/rapidjson/include/rapidjson/error/../internal/../allocators.h:437:30
    #3 0xaaaacb1ed4ec in rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>::DoReserveMembers(unsigned int, ZeroPoolAllocator&) /root/ceph/src/s3select/rapidjson/include/rapidjson/document.h:2260:34
    #4 0xaaaacb1ed2cc in rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>::DoAddMember(rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>&, rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>&, ZeroPoolAllocator&) /root/ceph/src/s3select/rapidjson/include/rapidjson/document.h:2292:13
    #5 0xaaaacb1ec344 in rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>::AddMember(rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>&, rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>&, ZeroPoolAllocator&) /root/ceph/src/s3select/rapidjson/include/rapidjson/document.h:1375:9
    #6 0xaaaacb19769c in void add_name_val_to_obj<rapidjson::UTF8<char>, ZeroPoolAllocator>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>&, ZeroPoolAllocator&) /root/ceph/src/rgw/rgw_kms.cc:149:5
    #7 0xaaaacb197058 in void add_name_val_to_obj<rapidjson::UTF8<char>, ZeroPoolAllocator>(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>&, ZeroPoolAllocator&) /root/ceph/src/rgw/rgw_kms.cc:169:3
    #8 0xaaaacb1ac4a8 in TransitSecretEngine::make_actual_key(DoutPrefixProvider const*, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > >&, optional_yield, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /root/ceph/src/rgw/rgw_kms.cc:485:5
    #9 0xaaaacb188f88 in TestSSEKMS_test_transit_makekey_Test::TestBody() /root/ceph/src/test/rgw/test_rgw_kms.cc:192:29
    #10 0xaaaacb34549c in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /root/ceph/src/googletest/googletest/src/gtest.cc:2605:10
    #11 0xaaaacb2f864c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /root/ceph/src/googletest/googletest/src/gtest.cc:2641:14
    #12 0xaaaacb2aa958 in testing::Test::Run() /root/ceph/src/googletest/googletest/src/gtest.cc:2680:5
    #13 0xaaaacb2ac89c in testing::TestInfo::Run() /root/ceph/src/googletest/googletest/src/gtest.cc:2858:11
    #14 0xaaaacb2ade9c in testing::TestSuite::Run() /root/ceph/src/googletest/googletest/src/gtest.cc:3012:28
    #15 0xaaaacb2c9c60 in testing::internal::UnitTestImpl::RunAllTests() /root/ceph/src/googletest/googletest/src/gtest.cc:5723:44
    #16 0xaaaacb34f310 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /root/ceph/src/googletest/googletest/src/gtest.cc:2605:10
    #17 0xaaaacb2ff588 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /root/ceph/src/googletest/googletest/src/gtest.cc:2641:14
    #18 0xaaaacb2c90d8 in testing::UnitTest::Run() /root/ceph/src/googletest/googletest/src/gtest.cc:5306:10
    #19 0xaaaacb250ae4 in RUN_ALL_TESTS() /root/ceph/src/googletest/googletest/include/gtest/gtest.h:2486:46
    #20 0xaaaacb250a60 in main /root/ceph/src/googletest/googlemock/src/gmock_main.cc:70:10
    #21 0xffff7cf773f8 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16
    #22 0xffff7cf774c8 in __libc_start_main csu/../csu/libc-start.c:392:3
    #23 0xaaaacb0c102c in _start (/root/ceph/build/bin/unittest_rgw_kms+0x44102c) (BuildId: 2005acbecb5cbd5bc928c98209bd613f20ecbacf)

Direct leak of 768 byte(s) in 1 object(s) allocated from:
    #0 0xaaaacb1381e0 in malloc (/root/ceph/build/bin/unittest_rgw_kms+0x4b81e0) (BuildId: 2005acbecb5cbd5bc928c98209bd613f20ecbacf)
    #1 0xaaaacb1ed768 in ZeroPoolAllocator::Realloc(void*, unsigned long, unsigned long) /root/ceph/src/rgw/rgw_kms.cc:84:14
    #2 0xaaaacb1ed728 in rapidjson::GenericMember<rapidjson::UTF8<char>, ZeroPoolAllocator>* rapidjson::Realloc<rapidjson::GenericMember<rapidjson::UTF8<char>, ZeroPoolAllocator>, ZeroPoolAllocator>(ZeroPoolAllocator&, rapidjson::GenericMember<rapidjson::UTF8<char>, ZeroPoolAllocator>*, unsigned long, unsigned long) /root/ceph/src/s3select/rapidjson/include/rapidjson/error/../internal/../allocators.h:437:30
    #3 0xaaaacb1ed4ec in rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>::DoReserveMembers(unsigned int, ZeroPoolAllocator&) /root/ceph/src/s3select/rapidjson/include/rapidjson/document.h:2260:34
    #4 0xaaaacb1ed2cc in rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>::DoAddMember(rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>&, rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>&, ZeroPoolAllocator&) /root/ceph/src/s3select/rapidjson/include/rapidjson/document.h:2292:13
    #5 0xaaaacb1ec344 in rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>::AddMember(rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>&, rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>&, ZeroPoolAllocator&) /root/ceph/src/s3select/rapidjson/include/rapidjson/document.h:1375:9
    #6 0xaaaacb19769c in void add_name_val_to_obj<rapidjson::UTF8<char>, ZeroPoolAllocator>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>&, ZeroPoolAllocator&) /root/ceph/src/rgw/rgw_kms.cc:149:5
    #7 0xaaaacb197058 in void add_name_val_to_obj<rapidjson::UTF8<char>, ZeroPoolAllocator>(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, rapidjson::GenericValue<rapidjson::UTF8<char>, ZeroPoolAllocator>&, ZeroPoolAllocator&) /root/ceph/src/rgw/rgw_kms.cc:169:3
    #8 0xaaaacb1b2298 in TransitSecretEngine::reconstitute_actual_key(DoutPrefixProvider const*, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > const&, optional_yield, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /root/ceph/src/rgw/rgw_kms.cc:569:5
    #9 0xaaaacb18abcc in TestSSEKMS_test_transit_reconstitutekey_Test::TestBody() /root/ceph/src/test/rgw/test_rgw_kms.cc:216:29
    #10 0xaaaacb34549c in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /root/ceph/src/googletest/googletest/src/gtest.cc:2605:10
    #11 0xaaaacb2f864c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /root/ceph/src/googletest/googletest/src/gtest.cc:2641:14
    #12 0xaaaacb2aa958 in testing::Test::Run() /root/ceph/src/googletest/googletest/src/gtest.cc:2680:5
    #13 0xaaaacb2ac89c in testing::TestInfo::Run() /root/ceph/src/googletest/googletest/src/gtest.cc:2858:11
    #14 0xaaaacb2ade9c in testing::TestSuite::Run() /root/ceph/src/googletest/googletest/src/gtest.cc:3012:28
    #15 0xaaaacb2c9c60 in testing::internal::UnitTestImpl::RunAllTests() /root/ceph/src/googletest/googletest/src/gtest.cc:5723:44
    #16 0xaaaacb34f310 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /root/ceph/src/googletest/googletest/src/gtest.cc:2605:10
    #17 0xaaaacb2ff588 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /root/ceph/src/googletest/googletest/src/gtest.cc:2641:14
    #18 0xaaaacb2c90d8 in testing::UnitTest::Run() /root/ceph/src/googletest/googletest/src/gtest.cc:5306:10
    #19 0xaaaacb250ae4 in RUN_ALL_TESTS() /root/ceph/src/googletest/googletest/include/gtest/gtest.h:2486:46
    #20 0xaaaacb250a60 in main /root/ceph/src/googletest/googlemock/src/gmock_main.cc:70:10
    #21 0xffff7cf773f8 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16
    #22 0xffff7cf774c8 in __libc_start_main csu/../csu/libc-start.c:392:3
    #23 0xaaaacb0c102c in _start (/root/ceph/build/bin/unittest_rgw_kms+0x44102c) (BuildId: 2005acbecb5cbd5bc928c98209bd613f20ecbacf)

...
...

Indirect leak of 18 byte(s) in 1 object(s) allocated from:
    #0 0xaaaab6e3f148 in operator new(unsigned long) (/root/ceph/build/bin/unittest_rgw_kms+0x4ef148) (BuildId: 2005acbecb5cbd5bc928c98209bd613f20ecbacf)
    #1 0xffffac4a0fa0 in __gnu_cxx::new_allocator<char>::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/ext/new_allocator.h:127:27
    #2 0xffffac4a0f1c in std::allocator<char>::allocate(unsigned long) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/allocator.h:185:32
    #3 0xffffac4a0f1c in std::allocator_traits<std::allocator<char> >::allocate(std::allocator<char>&, unsigned long) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/alloc_traits.h:464:20
    #4 0xffffac4a0c1c in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_create(unsigned long&, unsigned long) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/basic_string.tcc:153:14
    #5 0xffffac4a0618 in void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char*>(char*, char*, std::forward_iterator_tag) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/basic_string.tcc:219:14
    #6 0xffffac4a0398 in void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct_aux<char*>(char*, char*, std::__false_type) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/basic_string.h:255:11
    #7 0xffffac4a00d0 in void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char*>(char*, char*) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/basic_string.h:274:4
    #8 0xffffac49fe0c in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/basic_string.h:459:9
    #9 0xffffacc9b490 in std::enable_if<((__exactly_once<std::variant_alternative<__accepted_index<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>, std::variant<std::monostate, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, long, double, bool, entity_addr_t, entity_addrvec_t, std::chrono::duration<long, std::ratio<1l, 1l> >, std::chrono::duration<long, std::ratio<1l, 1000l> >, Option::size_t, uuid_d> >::type>) && (is_constructible_v<std::variant_alternative<__accepted_index<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>, std::variant<std::monostate, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, long, double, bool, entity_addr_t, entity_addrvec_t, std::chrono::duration<long, std::ratio<1l, 1l> >, std::chrono::duration<long, std::ratio<1l, 1000l> >, Option::size_t, uuid_d> >::type, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>)) && (is_assignable_v<std::variant_alternative<__accepted_index<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>, std::variant<std::monostate, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, long, double, bool, entity_addr_t, entity_addrvec_t, std::chrono::duration<long, std::ratio<1l, 1l> >, std::chrono::duration<long, std::ratio<1l, 1000l> >, Option::size_t, uuid_d> >::type&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>), std::variant<std::monostate, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, long, double, bool, entity_addr_t, entity_addrvec_t, std::chrono::duration<long, std::ratio<1l, 1l> >, std::chrono::duration<long, std::ratio<1l, 1000l> >, Option::size_t, uuid_d>&>::type std::variant<std::monostate, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, long, double, bool, entity_addr_t, entity_addrvec_t, std::chrono::duration<long, std::ratio<1l, 1l> >, std::chrono::duration<long, std::ratio<1l, 1000l> >, Option::size_t, uuid_d>::operator=<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /usr/bin/../lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/variant:1477:26
    #10 0xffffacc9298c in Option::parse_value(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::variant<std::monostate, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, long, double, bool, entity_addr_t, entity_addrvec_t, std::chrono::duration<long, std::ratio<1l, 1l> >, std::chrono::duration<long, std::ratio<1l, 1000l> >, Option::size_t, uuid_d>*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) const /root/ceph/src/common/options.cc:165:10
    #11 0xffffacb813cc in md_config_t::_set_val(ConfigValues&, ConfigTracker const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Option const&, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) /root/ceph/src/common/config.cc:1395:15
    #12 0xffffacb8f084 in md_config_t::set_val(ConfigValues&, ConfigTracker const&, std::basic_string_view<char, std::char_traits<char> >, char const*, std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >*) /root/ceph/src/common/config.cc:930:13
    #13 0xaaaab6ecb014 in md_config_t::set_val(ConfigValues&, ConfigTracker const&, std::basic_string_view<char, std::char_traits<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >*) /root/ceph/src/common/config.h:180:12
    #14 0xaaaab6e72464 in ceph::common::ConfigProxy::set_val(std::basic_string_view<char, std::char_traits<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >*) /root/ceph/src/common/config_proxy.h:239:19
    #15 0xaaaab6e53bf8 in TestSSEKMS_non_existent_vault_token_file_Test::TestBody() /root/ceph/src/test/rgw/test_rgw_kms.cc:84:14
    #16 0xaaaab701549c in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /root/ceph/src/googletest/googletest/src/gtest.cc:2605:10
    #17 0xaaaab6fc864c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /root/ceph/src/googletest/googletest/src/gtest.cc:2641:14
    #18 0xaaaab6f7a958 in testing::Test::Run() /root/ceph/src/googletest/googletest/src/gtest.cc:2680:5
    #19 0xaaaab6f7c89c in testing::TestInfo::Run() /root/ceph/src/googletest/googletest/src/gtest.cc:2858:11
    #20 0xaaaab6f7de9c in testing::TestSuite::Run() /root/ceph/src/googletest/googletest/src/gtest.cc:3012:28
    #21 0xaaaab6f99c60 in testing::internal::UnitTestImpl::RunAllTests() /root/ceph/src/googletest/googletest/src/gtest.cc:5723:44
    #22 0xaaaab701f310 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /root/ceph/src/googletest/googletest/src/gtest.cc:2605:10
    #23 0xaaaab6fcf588 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /root/ceph/src/googletest/googletest/src/gtest.cc:2641:14
    #24 0xaaaab6f990d8 in testing::UnitTest::Run() /root/ceph/src/googletest/googletest/src/gtest.cc:5306:10
    #25 0xaaaab6f20ae4 in RUN_ALL_TESTS() /root/ceph/src/googletest/googletest/include/gtest/gtest.h:2486:46
    #26 0xaaaab6f20a60 in main /root/ceph/src/googletest/googlemock/src/gmock_main.cc:70:10
    #27 0xffffa99573f8 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16
    #28 0xffffa99574c8 in __libc_start_main csu/../csu/libc-start.c:392:3
    #29 0xaaaab6d9102c in _start (/root/ceph/build/bin/unittest_rgw_kms+0x44102c) (BuildId: 2005acbecb5cbd5bc928c98209bd613f20ecbacf)

SUMMARY: AddressSanitizer: 112735554 byte(s) leaked in 36910 allocation(s).
```

1. fix memory reallocate issue
2. free cct

Signed-off-by: Rongqi Sun <sunrongqi@huawei.com>
13 months agodoc: Update pendingreleasenotes for dashboard 57584/head
Nizamudeen A [Tue, 21 May 2024 05:11:26 +0000 (10:41 +0530)]
doc: Update pendingreleasenotes for dashboard

Signed-off-by: Nizamudeen A <nia@redhat.com>
13 months agoMerge pull request #57633 from mcv21/patch-1
Zac Dover [Thu, 23 May 2024 01:26:07 +0000 (11:26 +1000)]
Merge pull request #57633 from mcv21/patch-1

Docs: clarify use of location: in host spec

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
Reviewed-by: Adam King <adking@redhat.com>
13 months agoMerge PR #57493 into main
Patrick Donnelly [Thu, 23 May 2024 01:18:17 +0000 (21:18 -0400)]
Merge PR #57493 into main

* refs/pull/57493/head:
qa/cephfs: pass MDS name, not FS name, to "ceph mds fail" cmd

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
13 months agoMerge PR #57469 into main
Patrick Donnelly [Thu, 23 May 2024 01:16:32 +0000 (21:16 -0400)]
Merge PR #57469 into main

* refs/pull/57469/head:
mds: set dispatcher order
mds: use regular dispatch for processing beacons
msg: add priority to dispatcher invocation order
mds: note when dispatcher is called

Reviewed-by: Leonid Usov <leonid.usov@ibm.com>
13 months agoMerge PR #57392 into main
Patrick Donnelly [Thu, 23 May 2024 01:15:57 +0000 (21:15 -0400)]
Merge PR #57392 into main

* refs/pull/57392/head:
common/Formatter: use CachedStackStringStream for efficiency

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
13 months agoMerge PR #57374 into main
Patrick Donnelly [Thu, 23 May 2024 01:15:33 +0000 (21:15 -0400)]
Merge PR #57374 into main

* refs/pull/57374/head:
common/Formatter: trivial cons/des should be default

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
13 months agoMerge PR #57215 into main
Patrick Donnelly [Thu, 23 May 2024 01:15:07 +0000 (21:15 -0400)]
Merge PR #57215 into main

* refs/pull/57215/head:
doc: document new --output-file switch
test/cli: ignore tmp_file_template
qa/workunits: add --output-file test in cephtool workunit
common,ceph: add output file switch to dump json to
common/options: add configs for temporary files made by daemons
common/Formatter: write the pending string on flush

Reviewed-by: Leonid Usov <leonid.usov@ibm.com>
Reviewed-by: Anthony D Atri <anthony.datri@gmail.com>
13 months agoMerge PR #57170 into main
Patrick Donnelly [Thu, 23 May 2024 01:12:24 +0000 (21:12 -0400)]
Merge PR #57170 into main

* refs/pull/57170/head:
client: set LIBMOUNT_FORCE_MOUNT2=always

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
13 months agoMerge PR #57081 into main
Patrick Donnelly [Thu, 23 May 2024 01:11:52 +0000 (21:11 -0400)]
Merge PR #57081 into main

* refs/pull/57081/head:
messages/MClientMetrics: increase priority ahead of regular requests
mds: use regular dispatch for processing metrics

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
13 months agoMerge pull request #57642 from dmick/wip-release-doc
Dan Mick [Thu, 23 May 2024 00:59:16 +0000 (17:59 -0700)]
Merge pull request #57642 from dmick/wip-release-doc

doc/dev/release-process.rst: note new 'project' arguments

13 months agodoc/dev/release-process.rst: note new 'project' arguments 57642/head
Dan Mick [Wed, 22 May 2024 22:25:51 +0000 (15:25 -0700)]
doc/dev/release-process.rst: note new 'project' arguments

Support added to the release scripts (from ceph-build.git) to
work for ceph-iscsi, so 'project' must be passed to these scripts,
and will appear in the prerelease pathnames.  See also
https://github.com/ceph/ceph-build/pull/2243 and
https://github.com/ceph/ceph-container/pull/2210

Signed-off-by: Dan Mick <dan.mick@redhat.com>
13 months agoMerge pull request #57575 from cbodley/wip-rgw-maintainers-ali
Casey Bodley [Wed, 22 May 2024 21:25:49 +0000 (22:25 +0100)]
Merge pull request #57575 from cbodley/wip-rgw-maintainers-ali

rgw: remove Ali Maredia from MAINTAINERS.md

Reviewed-by: Adam Emerson <aemerson@redhat.com>
13 months agocommon/async: add spawn_throttle for bounded concurrency with optional_yield
Casey Bodley [Wed, 8 May 2024 16:42:42 +0000 (12:42 -0400)]
common/async: add spawn_throttle for bounded concurrency with optional_yield

a primitive for structured concurrency with stackful coroutines from
boost::asio::spawn(). this relies on spawn()'s support for per-op
cancellation to guarantee that the lifetime of child coroutines won't
exceed the lifetime of their spawn_throttle, making it safe for children
to access memory from their parent's stack

by taking optional_yield in the constructor, spawn_throttle transparently
supports synchronous execution (where optional_yield is empty) and
asynchronous execution within a stackful coroutine (where optional_yield
contains the parent's yield_context)

Signed-off-by: Casey Bodley <cbodley@redhat.com>