]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
18 months agocmake: Ensure git exists before executing it 54963/head
Dominique Leuenberger [Tue, 19 Dec 2023 12:28:29 +0000 (13:28 +0100)]
cmake: Ensure git exists before executing it

CMake 3.28 has turned stricter when executing string(REPLACE …) and
expects four or more commands. In case of distro package builds from
tarball, it happens that git is not present. CTags.cmake tries to
catch that by veriying the exit status of the command, but as there
is in fact git | awk, awk returns 0 even when git does not exist.

Ensure that the variable submodules has been defined before trying
to replace substrings in this variable.

Signed-off-by: Dominique Leuenberger <dimstar@opensuse.org>
18 months agoMerge pull request #54609 from xxhdx1985126/wip-crimson-rollback-fixes
Matan Breizman [Tue, 19 Dec 2023 10:12:53 +0000 (12:12 +0200)]
Merge pull request #54609 from xxhdx1985126/wip-crimson-rollback-fixes

crimson/osd/pg_backend: fix rollback on whiteouts

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
18 months agoMerge pull request #54960 from zdover23/wip-doc-2023-12-19-install-clone-source-submo...
zdover23 [Tue, 19 Dec 2023 09:53:04 +0000 (19:53 +1000)]
Merge pull request #54960 from zdover23/wip-doc-2023-12-19-install-clone-source-submodule-update

doc/install: update "update submodules"

Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
19 months agodoc/install: update "update submodules" 54960/head
Zac Dover [Tue, 19 Dec 2023 09:15:57 +0000 (19:15 +1000)]
doc/install: update "update submodules"

Remove misleading material that would give readers the wrong idea about
when stale submodules are present. This commit is made in response to
information given to me by Ilya Dryomov here: https://github.com/ceph/ceph/pull/54929#issuecomment-1859237986.

Signed-off-by: Zac Dover <zac.dover@proton.me>
19 months agocrimson/osd/pg_backend: whiteout objects if they will have clones when 54609/head
Xuehan Xu [Wed, 22 Nov 2023 05:16:36 +0000 (13:16 +0800)]
crimson/osd/pg_backend: whiteout objects if they will have clones when
rolling back

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
19 months agoMerge pull request #54917 from tchaikov/cmake-cephfs-sans-libcephfs
Kefu Chai [Tue, 19 Dec 2023 04:57:41 +0000 (12:57 +0800)]
Merge pull request #54917 from tchaikov/cmake-cephfs-sans-libcephfs

cmake: differentiate WITH_CEPHFS from WITH_LIBCEPHFS

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
19 months agoMerge pull request #54931 from athanatos/sjust/wip-crimson-2023-12-13-fixes
Samuel Just [Tue, 19 Dec 2023 01:37:26 +0000 (17:37 -0800)]
Merge pull request #54931 from athanatos/sjust/wip-crimson-2023-12-13-fixes

crimson: misc fixes

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
19 months agoMerge pull request #54506 from ceph/wip-yuriw-release-18.2.1-main
Laura Flores [Mon, 18 Dec 2023 20:57:53 +0000 (14:57 -0600)]
Merge pull request #54506 from ceph/wip-yuriw-release-18.2.1-main

doc: Add Reef 18.2.1 release notes

19 months agoMerge pull request #52495 from adamemerson/wip-neorados-learning-from-experience
Casey Bodley [Mon, 18 Dec 2023 18:28:45 +0000 (18:28 +0000)]
Merge pull request #52495 from adamemerson/wip-neorados-learning-from-experience

neorados: Learning from experience

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
19 months agoMerge pull request #53227 from Matan-B/wip-matanb-cleanup-stale-osdmap
Matan Breizman [Mon, 18 Dec 2023 14:36:49 +0000 (16:36 +0200)]
Merge pull request #53227 from Matan-B/wip-matanb-cleanup-stale-osdmap

osd/OSD: introduce trim_stale_maps

Reviewed-by: Samuel Just <sjust@redhat.com>
19 months agoqa/tasks/ceph_manager: thrash - add trim stale osdmaps 53227/head
Matan Breizman [Thu, 26 Oct 2023 10:18:59 +0000 (10:18 +0000)]
qa/tasks/ceph_manager: thrash - add trim stale osdmaps

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
19 months agoosd/OSD: introduce trim_stale_maps
Matan Breizman [Wed, 30 Aug 2023 08:57:18 +0000 (08:57 +0000)]
osd/OSD: introduce trim_stale_maps

```
  /**
   * trim_stale_maps
   *
   * trim_maps had a possible (rare) leak which resulted in stale osdmaps.
   * This method will cleanup any existing osdmaps from the store
   * with an epoch earlier than the superblock's oldest_map epoch.
   * See: https://tracker.ceph.com/issues/61962
   */
```

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
19 months agocmake: differentiate WITH_CEPHFS from WITH_LIBCEPHFS 54917/head
Kefu Chai [Fri, 15 Dec 2023 10:18:01 +0000 (18:18 +0800)]
cmake: differentiate WITH_CEPHFS from WITH_LIBCEPHFS

WITH_CEPHFS is used for enabling the server side of cephfs, i.e., mds,
while WITH_LIBCEPHFS is for the client side of it, namely libcephfs
and its python bindings. since we have these two different options,
in theory, user is allowed to build with WITH_CEPHFS=ON and
WITH_LIBCEPHFS=OFF, and in that case, `vstart` should not depend on
the non-existent target of cephfs and cython_cephfs. the same applies to
the build of cython_cephfs. this is an unusual combination, but
it is a valid one.

in this change, we

* build the python binding only if WITH_LIBCEPHFS is ON
* add cephfs and cython_cephfs as dependencies of vstart only if
  WITH_LIBCEPHFS is ON

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
19 months agocmake: add deps to vstart and vstart-base with loop
Kefu Chai [Mon, 18 Dec 2023 07:16:38 +0000 (15:16 +0800)]
cmake: add deps to vstart and vstart-base with loop

so we don't have to repeat the settings enabling a given target
when adding the deps to vstart and vstart-base

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
19 months agoMerge pull request #54929 from dann1/main
zdover23 [Mon, 18 Dec 2023 04:19:58 +0000 (14:19 +1000)]
Merge pull request #54929 from dann1/main

doc: Improve documentation regarding OpenNebula integration with ceph

Reviewed-by: Zac Dover <zac.dover@proton.me>
19 months agoMerge pull request #54937 from gruenich/feature/cmake-drop-redundant-policies
Kefu Chai [Mon, 18 Dec 2023 02:25:54 +0000 (10:25 +0800)]
Merge pull request #54937 from gruenich/feature/cmake-drop-redundant-policies

cmake: Do not set CMake policy to new that are set anyway

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
19 months agodocs: Add information about OpenNebula integration 54929/head
Daniel Clavijo Coca [Fri, 15 Dec 2023 15:54:02 +0000 (09:54 -0600)]
docs: Add information about OpenNebula integration

- Exclude doc build output from git
- Fix missing doc build dependency
- Also includes some involuntary automatically persistent linting by vscode

Co-authored-by: Ilya Dryomov <idryomov@redhat.com>
Co-authored-by: Anthony D'Atri <anthony.datri@gmail.com>
Co-authored-by: Zac Dover <zac.dover@proton.me>
Signed-off-by: Daniel Clavijo <dclavijo@opennebula.io>
19 months agocmake: Do not set CMake policy to new that are set anyway 54937/head
Christoph Grüninger [Sun, 17 Dec 2023 21:18:43 +0000 (22:18 +0100)]
cmake: Do not set CMake policy to new that are set anyway

CMP0097 and below are all implicitly set to new because
the minimum required CMake version is 3.16 and these
policies are older.

Signed-off-by: Christoph Grüninger <foss@grueninger.de>
19 months agoMerge pull request #52474 from vedanshbhartia/coverity_1515850
Yuval Lifshitz [Sun, 17 Dec 2023 16:29:41 +0000 (18:29 +0200)]
Merge pull request #52474 from vedanshbhartia/coverity_1515850

rgw: Fix potential null dereference in rgw/driver/dbstore/sqlite/statement.cc

reviewed-by: thotz, yuvalif

19 months agoMerge pull request #52276 from vedanshbhartia/coverity_1523402
Yuval Lifshitz [Sun, 17 Dec 2023 16:29:01 +0000 (18:29 +0200)]
Merge pull request #52276 from vedanshbhartia/coverity_1523402

rgw: Add a wrapper for librados::AioCompletion to prevent memory leaks

reviewed-by: cbodley, yuvalif

19 months agoMerge pull request #53902 from vedanshbhartia/coverity_except_main
Yuval Lifshitz [Sun, 17 Dec 2023 16:27:27 +0000 (18:27 +0200)]
Merge pull request #53902 from vedanshbhartia/coverity_except_main

rgw: Add coverity annotations for uncaught exceptions in standalone binaries

reviewed-by: yuvalif

19 months agoMerge pull request #54547 from idryomov/wip-53897
Ilya Dryomov [Sun, 17 Dec 2023 10:27:11 +0000 (11:27 +0100)]
Merge pull request #54547 from idryomov/wip-53897

librbd: don't report HOLE_UPDATED when diffing against a hole

Reviewed-by: Mykola Golub <mgolub@suse.com>
19 months agoMerge pull request #54569 from AliMasarweh/wip-alimasa-multi-pubsub-etag
Yuval Lifshitz [Sun, 17 Dec 2023 10:12:48 +0000 (12:12 +0200)]
Merge pull request #54569 from AliMasarweh/wip-alimasa-multi-pubsub-etag

RGW: pubsub publish commit with etag populated

revieweed-by: cbodley, yuvalif

19 months agoMerge pull request #52354 from bluikko/patch-13
Anthony D'Atri [Sat, 16 Dec 2023 19:11:54 +0000 (14:11 -0500)]
Merge pull request #52354 from bluikko/patch-13

doc/radosgw/admin.rst: use underscores in config var names

19 months agoMerge pull request #54888 from cbodley/wip-rgw-multisite-forward-empty-buffer
Casey Bodley [Sat, 16 Dec 2023 16:25:14 +0000 (16:25 +0000)]
Merge pull request #54888 from cbodley/wip-rgw-multisite-forward-empty-buffer

rgw/multisite: forwarded requests always pass a bufferlist

Reviewed-by: Shilpa Jagannath <smanjara@redhat.com>
19 months agoMerge pull request #54739 from cbodley/wip-qa-rgw-upgrade-distros
Casey Bodley [Sat, 16 Dec 2023 16:24:57 +0000 (16:24 +0000)]
Merge pull request #54739 from cbodley/wip-qa-rgw-upgrade-distros

qa/rgw/upgrade: stop testing upgrade from pacific

Reviewed-by: Shilpa Jagannath <smanjara@redhat.com>
19 months agocrimson/.../client_request_common: skip non-existent oids in recover_missings 54931/head
Samuel Just [Sat, 16 Dec 2023 00:26:30 +0000 (00:26 +0000)]
crimson/.../client_request_common: skip non-existent oids in recover_missings

See comment.

Introduced: 38cc750f
Fixes: https://tracker.ceph.com/issues/63821
Signed-off-by: Samuel Just <sjust@redhat.com>
19 months agocrimson/.../client_request_common: simplify recover_missings
Samuel Just [Thu, 14 Dec 2023 06:41:00 +0000 (22:41 -0800)]
crimson/.../client_request_common: simplify recover_missings

- Modify ClientRequest::snaps_need_to_recover() to return all
  relevant snaps including the operation target.
- Update ClientRequest::snaps_need_to_recover() and
  CommonClientRequest::recover_missings to use set::set
  for snaps.
- Remove special handling for soid from
  CommonClientRequest::recover_missings
- Simplify CommonClientRequest::recover_missings.

Signed-off-by: Samuel Just <sjust@redhat.com>
19 months agodoc: Add Reef 18.2.1 release notes 54506/head
Yuri Weinstein [Tue, 14 Nov 2023 21:14:46 +0000 (13:14 -0800)]
doc: Add Reef 18.2.1 release notes

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
Signed-off-by: Laura Flores <lflores@ibm.com>
19 months agoMerge pull request #54841 from cbodley/wip-rgw-multisite-rados-crash
Casey Bodley [Fri, 15 Dec 2023 18:34:25 +0000 (18:34 +0000)]
Merge pull request #54841 from cbodley/wip-rgw-multisite-rados-crash

rgw/multisite: error repo coroutines store raw_obj by value

Reviewed-by: Shilpa Jagannath <smanjara@redhat.com>
19 months agoMerge pull request #54920 from tchaikov/cls-2pc-reserv-dencode
Casey Bodley [Fri, 15 Dec 2023 16:40:07 +0000 (16:40 +0000)]
Merge pull request #54920 from tchaikov/cls-2pc-reserv-dencode

cls/queue: always set member variables in ctor

Reviewed-by: Casey Bodley <cbodley@redhat.com>
19 months agocls/queue: always set member variables in ctor 54920/head
Kefu Chai [Fri, 15 Dec 2023 12:20:46 +0000 (20:20 +0800)]
cls/queue: always set member variables in ctor

this should address the test failures like

```
/tmp/typ-WWFeFl6yK /tmp/typ-sMfwoaGMU differ: byte 24, line 1
**** cls_2pc_reservation test 2 binary reencode check failed ****
   ceph-dencoder type cls_2pc_reservation select_test 2 encode export /tmp/typ-WWFeFl6yK
   ceph-dencoder type cls_2pc_reservation select_test 2 encode decode encode export /tmp/typ-sMfwoaGMU
2c2
00000010  00 00 00 00 00 00 c0 c6  92 10                    |..........|
---
00000010  00 00 00 00 00 00 c0 e6  cd 53                    |.........S|
```

where we
1. encode the 2nd sample created by `generate_test_instances()`,
2. encode, decode, and encode again, the same sample

and compare the encoded blobs.

but if we fail to set any of the fields in `cls_2pc_reservation`,
we are at the mercy of the random bits on stack/heap.

in this change, all bits are initialized.

the flaky test was introduced by 1d7cabf3

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
19 months agoMerge PR #52196 into main
Patrick Donnelly [Fri, 15 Dec 2023 13:18:28 +0000 (08:18 -0500)]
Merge PR #52196 into main

* refs/pull/52196/head:
qa: configure balancer for multi-mds workloads
qa: create qa subvolumes in named subvolumegroup
qa: do not rely on default max_mds value
qa: add automate_balance to dashboard qa schema
doc/cephfs: add docs for balance_automate
doc/cephfs: use bash prompt for shell code
mds: add balance_automate fs setting

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Xiubo Li <xiubli@redhat.com>
19 months agotest/pybind/rbd: don't ignore from_snapshot in check_diff() 54547/head
Ilya Dryomov [Sun, 10 Dec 2023 16:01:24 +0000 (17:01 +0100)]
test/pybind/rbd: don't ignore from_snapshot in check_diff()

Despite the test in test_diff_iterate() being correct, it started
failing:

    >       check_diff(self.image, 0, IMG_SIZE, 'snap1', [(0, 512, False)])
    ...
    a = [], b = [(0, 512, False)]
    ...
    >       assert a == b
    E       AssertionError

This is because check_diff() drops 'snap1' argument on the floor and
passes None to image.diff_iterate() instead.  This goes back to 2013,
see commit e88fe3cbbc8f ("rbd.py: add some missing functions").

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
19 months agotest/librbd: redo TestMockObjectMapDiffRequest.*Delta tests
Ilya Dryomov [Sun, 3 Dec 2023 15:39:39 +0000 (16:39 +0100)]
test/librbd: redo TestMockObjectMapDiffRequest.*Delta tests

Existing *Delta tests cover:

- beginning of time -> HEAD, through intermediate snap
- snap -> snap, directly
- snap -> HEAD, directly

But coverage is too weak: none of the weird OBJECT_PENDING cases and
only a single diff-iterate vs deep-copy case is tested, for example.

Coverage is missing completely for:

- beginning of time -> HEAD, directly
- beginning of time -> snap, directly
- beginning of time -> snap, through intermediate snap
- snap -> snap, through intermediate snap
- snap -> HEAD, through intermediate snap

This adds the following tests:

- FromBeginningToHead
- FromBeginningToHeadIntermediateSnap (expands FullDelta)
- FromBeginningToSnap
- FromBeginningToSnapIntermediateSnap
- FromSnapToSnap (expands IntermediateDelta)
- FromSnapToSnapIntermediateSnap
- FromSnapToHead (expands EndDelta)
- FromSnapToHeadIntermediateSnap

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
19 months agoMerge pull request #54878 from yuvalif/wip-yuval-split-rgw-tools
Casey Bodley [Fri, 15 Dec 2023 04:10:29 +0000 (04:10 +0000)]
Merge pull request #54878 from yuvalif/wip-yuval-split-rgw-tools

rgw: split RGWDataAccess from rgw_tools.cc

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
19 months agoMerge pull request #54840 from cbodley/wip-qa-rgw-crypt-disable-kmip
Casey Bodley [Fri, 15 Dec 2023 04:10:13 +0000 (04:10 +0000)]
Merge pull request #54840 from cbodley/wip-qa-rgw-crypt-disable-kmip

qa/rgw/crypt: disable failing kmip testing

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
19 months agoMerge pull request #51732 from andreas-schwab/main
Kefu Chai [Fri, 15 Dec 2023 01:13:08 +0000 (09:13 +0800)]
Merge pull request #51732 from andreas-schwab/main

ceph.spec.in: enable build on riscv64 for openSUSE Factory

Reviewed-by: Tim Serong <tserong@suse.com>
Reviewed-by: Kefu Chai <tchaikov@gmail.com>
19 months agoMerge pull request #54893 from zdover23/wip-doc-2023-12-14-radosgw-role-formatting
zdover23 [Thu, 14 Dec 2023 21:45:22 +0000 (07:45 +1000)]
Merge pull request #54893 from zdover23/wip-doc-2023-12-14-radosgw-role-formatting

doc/radosgw: format commands in role.rst

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
19 months agodoc/radosgw: format commands in role.rst 54893/head
Zac Dover [Thu, 14 Dec 2023 06:14:29 +0000 (16:14 +1000)]
doc/radosgw: format commands in role.rst

Format approximately one-hundred lines of doc/radosgw/role.rst to
include proper command prompts. I also made one small English usage
improvement.

Co-authored-by: Anthony D'Atri <anthony.datri@gmail.com>
Signed-off-by: Zac Dover <zac.dover@proton.me>
19 months agoMerge pull request #54723 from phlogistonjohn/jjm-bib
Adam King [Thu, 14 Dec 2023 18:39:54 +0000 (13:39 -0500)]
Merge pull request #54723 from phlogistonjohn/jjm-bib

script/build-integration-branch: minor improvements around github api access & tokens

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Laura Flores <lflores@ibm.com>
19 months agoqa/rgw/upgrade: stop testing upgrade from pacific 54739/head
Casey Bodley [Thu, 30 Nov 2023 22:39:34 +0000 (17:39 -0500)]
qa/rgw/upgrade: stop testing upgrade from pacific

squid won't support upgrades from pacific. stop all testing against
centos8 and ubuntu20

Signed-off-by: Casey Bodley <cbodley@redhat.com>
19 months agoRGW:pubsub publish commit with etag populated 54569/head
Ali Masarwa [Sun, 19 Nov 2023 13:29:28 +0000 (15:29 +0200)]
RGW:pubsub publish commit with etag populated

Signed-off-by: Ali Masarwa <ali.saed.masarwa@gmail.com>
19 months agoMerge PR #54733 into main
Venky Shankar [Thu, 14 Dec 2023 05:55:01 +0000 (11:25 +0530)]
Merge PR #54733 into main

* refs/pull/54733/head:
client/fuse: handle case of renameat2 with non-zero flags

Reviewed-by: Xiubo Li <xiubli@redhat.com>
Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
19 months agoMerge pull request #53393 from rzarzynski/wip-ceph-run-op
Yingxin [Thu, 14 Dec 2023 02:21:43 +0000 (10:21 +0800)]
Merge pull request #53393 from rzarzynski/wip-ceph-run-op

ceph-run: fix string comparison around --no-restart

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
19 months agocrimson/osd/pg: rollback obc unconditionally before error log
Samuel Just [Wed, 13 Dec 2023 20:43:35 +0000 (12:43 -0800)]
crimson/osd/pg: rollback obc unconditionally before error log

If we're recording an error to the log, the write definitionally did not
happen.  Rollback the obc regardless of the specific error code.

Introduced: 1d98e8da
Fixes: https://tracker.ceph.com/issues/63820
Signed-off-by: Samuel Just <sjust@redhat.com>
19 months agoos/bluestore/BlueStore: fix crimson-only omap_get_values start handling
Samuel Just [Tue, 17 Oct 2023 04:33:08 +0000 (21:33 -0700)]
os/bluestore/BlueStore: fix crimson-only omap_get_values start handling

seek_to_first() if start is nullopt, upper_bound() otherwise.

Introduced: 9cf183ed46ad
Fixes: https://tracker.ceph.com/issues/63819
Signed-off-by: Samuel Just <sjust@redhat.com>
19 months agorgw/multisite: error repo coroutines initialize rados pointer 54841/head
Casey Bodley [Wed, 13 Dec 2023 20:32:37 +0000 (15:32 -0500)]
rgw/multisite: error repo coroutines initialize rados pointer

Signed-off-by: Casey Bodley <cbodley@redhat.com>
19 months agorgw/multisite: error repo coroutines store raw_obj by value
Casey Bodley [Fri, 8 Dec 2023 20:26:21 +0000 (15:26 -0500)]
rgw/multisite: error repo coroutines store raw_obj by value

RGWErrorRepoWriteCR/RGWErrorRepoRemoveCR need to copy their rgw_raw_obj
arguments to extend the lifetimes until send_request() is called

potential regression from https://github.com/ceph/ceph/pull/50359

Signed-off-by: Casey Bodley <cbodley@redhat.com>
19 months agoMerge pull request #54657 from a180285/patch-2
Ilya Dryomov [Wed, 13 Dec 2023 20:17:16 +0000 (21:17 +0100)]
Merge pull request #54657 from a180285/patch-2

rbd: update import-diff command help message

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
19 months agoMerge pull request #54832 from hex2dec/fix-cephadm-shell-help
Adam King [Wed, 13 Dec 2023 19:14:26 +0000 (14:14 -0500)]
Merge pull request #54832 from hex2dec/fix-cephadm-shell-help

cephadm: Fix `cephadm shell` command help message

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: John Mulligan <jmulligan@redhat.com>
19 months agoMerge pull request #54814 from rhcs-dashboard/update-grafana-version-cephadm
Adam King [Wed, 13 Dec 2023 19:10:55 +0000 (14:10 -0500)]
Merge pull request #54814 from rhcs-dashboard/update-grafana-version-cephadm

mgr/cephadm: bump grafana to 9.4.12

Reviewed-by: Adam King <adking@redhat.com>
19 months agoMerge pull request #54786 from guits/fix_63729
Adam King [Wed, 13 Dec 2023 17:15:53 +0000 (12:15 -0500)]
Merge pull request #54786 from guits/fix_63729

python-common: fix osdspec_affinity check

Reviewed-by: Adam King <adking@redhat.com>
19 months agoMerge pull request #54681 from adk3798/device-limit-testing
Adam King [Wed, 13 Dec 2023 17:15:05 +0000 (12:15 -0500)]
Merge pull request #54681 from adk3798/device-limit-testing

python-common/drive_selection: fix limit with existing devices

Reviewed-by: Michael Fritch <mfritch@suse.com>
Reviewed-by: Guillaume Abrioux <gabrioux@ibm.com>
19 months agoMerge pull request #54536 from phlogistonjohn/jjm-cephadm-units-n-scripts
Adam King [Wed, 13 Dec 2023 16:57:59 +0000 (11:57 -0500)]
Merge pull request #54536 from phlogistonjohn/jjm-cephadm-units-n-scripts

cephadm: add modules to abstract systemd units and run scripts

Reviewed-by: Adam King <adking@redhat.com>
19 months agoUpdate rbd import-diff command help message 54657/head
HuangWei [Sat, 25 Nov 2023 08:52:21 +0000 (16:52 +0800)]
Update rbd import-diff command help message

Signed-off-by: HuangWei <huangwei.a180285@gmail.com>
19 months agoMerge pull request #54319 from ajarr/wip-63410
Yuri Weinstein [Wed, 13 Dec 2023 15:43:52 +0000 (07:43 -0800)]
Merge pull request #54319 from ajarr/wip-63410

mgr/Mgr: remove shutdown() and handle_signal()

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
19 months agoMerge pull request #54102 from ifed01/wip-ifed-better-vselector-calls
Yuri Weinstein [Wed, 13 Dec 2023 15:43:12 +0000 (07:43 -0800)]
Merge pull request #54102 from ifed01/wip-ifed-better-vselector-calls

os/bluestore: rework vselector calls.

Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
19 months agoMerge pull request #52210 from ceph/wip-nitzan-ceph-dencoder-extend-common-types...
Yuri Weinstein [Wed, 13 Dec 2023 15:40:08 +0000 (07:40 -0800)]
Merge pull request #52210 from ceph/wip-nitzan-ceph-dencoder-extend-common-types-available

ceph-dencoder: COMMON - Add missing types

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
19 months agoMerge PR #48895 into main
Venky Shankar [Wed, 13 Dec 2023 15:23:13 +0000 (20:53 +0530)]
Merge PR #48895 into main

* refs/pull/48895/head:
qa: test cases for checking the health status after scrub repair
mds: scrub repair does not clear earlier damage health status

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
19 months agoMerge PR #54628 into main
Venky Shankar [Wed, 13 Dec 2023 15:19:52 +0000 (20:49 +0530)]
Merge PR #54628 into main

* refs/pull/54628/head:
qa/fscrypt: enable debug log for bluestore

Reviewed-by: Venky Shankar <vshankar@redhat.com>
19 months agoMerge PR #54669 into main
Venky Shankar [Wed, 13 Dec 2023 15:18:27 +0000 (20:48 +0530)]
Merge PR #54669 into main

* refs/pull/54669/head:
mds: set the loner to true for LOCK_EXCL_XSYN

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
19 months agoMerge PR #54704 into main
Venky Shankar [Wed, 13 Dec 2023 15:08:51 +0000 (20:38 +0530)]
Merge PR #54704 into main

* refs/pull/54704/head:
qa: don't fail on gather_mount_info() failure

Reviewed-by: Rishabh Dave <ridave@redhat.com>
Reviewed-by: Kotresh Hiremath Ravishankar <khiremat@redhat.com>
19 months agoMerge PR #54745 into main
Venky Shankar [Wed, 13 Dec 2023 15:06:06 +0000 (20:36 +0530)]
Merge PR #54745 into main

* refs/pull/54745/head:
mds: encode `bal_rank_mask` using a higher (next) version

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
19 months agorgw/multisite: forwarded requests always pass a bufferlist 54888/head
Casey Bodley [Wed, 13 Dec 2023 14:30:35 +0000 (09:30 -0500)]
rgw/multisite: forwarded requests always pass a bufferlist

d2dbe7550296da6db885b5344c71f77f9acbfd8f added a rgw_forward_request_to_master()
that took the input bufferlist by pointer instead of reference so it
could be optional; however, RGWRESTSimpleRequest::forward_request()
omits the Content-Length header when the data is nullptr. this was an
unintended change and broke the forwarding of some requests

Signed-off-by: Casey Bodley <cbodley@redhat.com>
19 months agoMerge pull request #54864 from cbodley/wip-mgr-rgw-realm-name
Casey Bodley [Wed, 13 Dec 2023 12:54:34 +0000 (12:54 +0000)]
Merge pull request #54864 from cbodley/wip-mgr-rgw-realm-name

mgr/rgwam: period doesn't have a realm_name anymore

Reviewed-by: Shilpa Jagannath <smanjara@redhat.com>
19 months agoMerge pull request #54615 from ronen-fr/wip-rf-schedRepair
Ronen Friedman [Wed, 13 Dec 2023 10:07:38 +0000 (12:07 +0200)]
Merge pull request #54615 from ronen-fr/wip-rf-schedRepair

osd/scrub: allow auto-repair on operator-initiated scrubs
Reviewed-by: Samuel Just <sjust@redhat.com>-
19 months agoMerge pull request #54748 from cbodley/wip-63717
Casey Bodley [Tue, 12 Dec 2023 22:36:31 +0000 (22:36 +0000)]
Merge pull request #54748 from cbodley/wip-63717

rgw/sysobj: pool_list_objects_init() initializes marker

Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
19 months agoqa: configure balancer for multi-mds workloads 52196/head
Patrick Donnelly [Wed, 12 Jul 2023 16:46:35 +0000 (12:46 -0400)]
qa: configure balancer for multi-mds workloads

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
19 months agoqa: create qa subvolumes in named subvolumegroup
Patrick Donnelly [Mon, 17 Jul 2023 15:07:14 +0000 (11:07 -0400)]
qa: create qa subvolumes in named subvolumegroup

So we can twiddle the subvolumegroup settings (like pins).

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
19 months agoqa: do not rely on default max_mds value
Patrick Donnelly [Wed, 12 Jul 2023 16:44:49 +0000 (12:44 -0400)]
qa: do not rely on default max_mds value

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
19 months agoqa: add automate_balance to dashboard qa schema
Patrick Donnelly [Tue, 18 Jul 2023 18:08:22 +0000 (14:08 -0400)]
qa: add automate_balance to dashboard qa schema

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
19 months agodoc/cephfs: add docs for balance_automate
Patrick Donnelly [Tue, 12 Dec 2023 16:45:05 +0000 (11:45 -0500)]
doc/cephfs: add docs for balance_automate

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
19 months agodoc/cephfs: use bash prompt for shell code
Patrick Donnelly [Tue, 12 Dec 2023 16:44:43 +0000 (11:44 -0500)]
doc/cephfs: use bash prompt for shell code

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
19 months agoMerge pull request #53841 from pilem/bug62320
Guillaume Abrioux [Tue, 12 Dec 2023 16:32:09 +0000 (17:32 +0100)]
Merge pull request #53841 from pilem/bug62320

src/ceph-volume/ceph_volume/devices/lvm/listing.py : lvm list filters with vg name

19 months agoMerge pull request #54608 from dillona/main
Guillaume Abrioux [Tue, 12 Dec 2023 16:31:36 +0000 (17:31 +0100)]
Merge pull request #54608 from dillona/main

ceph-volume: Use safe accessor to get TYPE info

19 months agoMerge pull request #54453 from saschalucas/fix-blkid-missing-key-type
Guillaume Abrioux [Tue, 12 Dec 2023 16:31:04 +0000 (17:31 +0100)]
Merge pull request #54453 from saschalucas/fix-blkid-missing-key-type

ceph-volume: fix blkid on inaccessible devices

19 months agoMerge pull request #53804 from guits/fix_63086
Guillaume Abrioux [Tue, 12 Dec 2023 16:30:04 +0000 (17:30 +0100)]
Merge pull request #53804 from guits/fix_63086

ceph-volume: fix util.get_partitions

19 months agomds: add balance_automate fs setting
Patrick Donnelly [Fri, 23 Jun 2023 21:01:00 +0000 (17:01 -0400)]
mds: add balance_automate fs setting

To turn off the automatic ("default") balancer in multiple MDS clusters. The
new default is "off" as the balancer  is a constant source of problems and
surprise for administrators trying multiple actives. Instead, it should be a
deliberate decision to turn it on and usually with customization like the
"bal_rank_mask" setting or pinning.

Fixes: https://tracker.ceph.com/issues/61378
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
19 months agoMerge pull request #54337 from batrick/i63433
Yuri Weinstein [Tue, 12 Dec 2023 16:12:24 +0000 (08:12 -0800)]
Merge pull request #54337 from batrick/i63433

pybind/mgr/devicehealth: replace SMART data if exists for same DATETIME

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
19 months agorgw: split RGWDataAccess from rgw_tools.cc 54878/head
Yuval Lifshitz [Tue, 12 Dec 2023 15:06:01 +0000 (15:06 +0000)]
rgw: split RGWDataAccess from rgw_tools.cc

that class is not rados specific, while the rest of the code
in rgw_tools.cc is

Signed-off-by: Yuval Lifshitz <ylifshit@redhat.com>
19 months agoMerge pull request #54875 from zdover23/wip-doc-2023-12-12-radosgw-role-create-a...
Anthony D'Atri [Tue, 12 Dec 2023 14:17:32 +0000 (09:17 -0500)]
Merge pull request #54875 from zdover23/wip-doc-2023-12-12-radosgw-role-create-a-role

doc/radosgw: format "Create a Role"

19 months agodoc/radosgw: format "Create a Role" 54875/head
Zac Dover [Tue, 12 Dec 2023 12:09:13 +0000 (22:09 +1000)]
doc/radosgw: format "Create a Role"

Properly format the section "Create a Role" in the file
doc/radosgw/role.rst.

Signed-off-by: Zac Dover <zac.dover@proton.me>
19 months agoMerge pull request #54750 from ivoalmeida/snapshot-schedule-list
Aashish Sharma [Tue, 12 Dec 2023 08:22:39 +0000 (13:52 +0530)]
Merge pull request #54750 from ivoalmeida/snapshot-schedule-list

mgr/dashboard: added snap-schedule api and ui list

Reviewed-by: Nizamudeen A <nia@redhat.com>
19 months agoMerge pull request #53483 from ifed01/wip-ifed-no-alloc-lba-align
Yuri Weinstein [Mon, 11 Dec 2023 19:01:09 +0000 (11:01 -0800)]
Merge pull request #53483 from ifed01/wip-ifed-no-alloc-lba-align

os/bluestore: get rid off resulting lba alignment in allocators

Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
19 months agotest/librbd: parametrize TestMockObjectMapDiffRequest tests
Ilya Dryomov [Sun, 3 Dec 2023 13:49:43 +0000 (14:49 +0100)]
test/librbd: parametrize TestMockObjectMapDiffRequest tests

Exercise both diff-iterate and deep-copy modes of operation.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
19 months agolibrbd: OBJECT_PENDING should always be treated as dirty
Ilya Dryomov [Fri, 8 Dec 2023 14:19:02 +0000 (15:19 +0100)]
librbd: OBJECT_PENDING should always be treated as dirty

OBJECT_PENDING is a transition state which normally isn't encountered
in (snapshot) object maps.  In case it's encountered, for example when
a snapshot is taken after losing power at the time a discard was being
handled, the object should be treated as dirty and produce a diff as
a result.

Assuming an object is marked OBJECT_PENDING, theoretically there are
four cases with respect to object's state in the next snapshot:

    1. OBJECT_NONEXISTENT
    2. OBJECT_EXISTS
    3. OBJECT_PENDING
    4. OBJECT_EXISTS_CLEAN

Prior to commit b81cd2460de7 ("librbd/object_map: diff state machine
should track object existence"), (3) was handled incorrectly (diff set
to DIFF_STATE_NONE instead of DIFF_STATE_UPDATED).

Post commit 399a45e11332 ("librbd/object_map: rbd diff between two
snapshots lists entire image content"), (4) is handled incorrectly
(diff set to DIFF_STATE_DATA instead of DIFF_STATE_DATA_UPDATED).

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
19 months agotest/librbd: expand DiffIterateTest.DiffIterateDiscard
Ilya Dryomov [Thu, 30 Nov 2023 16:30:33 +0000 (17:30 +0100)]
test/librbd: expand DiffIterateTest.DiffIterateDiscard

Similar to DiffIterateTest.DiffIterateDeterministic, systematically
cover the most common cases involving full-object discards.  With this
in place, issue [1] can be reproduced by any of:

    (preparatory) before snap3 is taken
    (1) beginning of time -> HEAD
    (2) snap1 -> HEAD
    (5) beginning of time -> snap3
    (6) snap1 -> snap3

Sub-object discards aren't covered here because of further issues
[2][3].

[1] https://tracker.ceph.com/issues/53897
[2] https://tracker.ceph.com/issues/63770
[3] https://tracker.ceph.com/issues/63771

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
19 months agolibrbd: resurrect "exists" assert in simple_diff_cb()
Ilya Dryomov [Fri, 10 Nov 2023 10:14:42 +0000 (11:14 +0100)]
librbd: resurrect "exists" assert in simple_diff_cb()

This effectively reverts commit 3ccc3bb4bd35 ("librbd: diff_iterate
needs to handle holes in parent images") which just dropped the assert
instead of addressing the root cause of reported crashes.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
19 months agolibrbd: diff-iterate shouldn't ever report "new hole" against a hole
Ilya Dryomov [Thu, 9 Nov 2023 19:44:18 +0000 (20:44 +0100)]
librbd: diff-iterate shouldn't ever report "new hole" against a hole

If an object doesn't exist in both start and end versions but there is
an intermediate snapshot which contains it (i.e. the object is written
to and captured at some point but then discarded prior to or in the end
version), diff-iterate reports "new hole" -- callback is invoked with
exists=false.  This occurs both on the slow list_snaps path and in
fast-diff mode.

Despite going all the way back to the introduction of diff-iterate in
commit 0296c7cdae91 ("librbd: implement diff_iterate"), this behavior
is wrong and contradicts diff-iterate API documentation added in commit
a69532e86450 ("librbd: document diff_iterate in header") in the same
series:

    If the source snapshot name is NULL, we interpret that as
    the beginning of time and return all allocated regions of the
    image.

It also triggered an assert added in commit c680531e070a ("librbd:
change diff_iterate interface to be more C-friendly") in the same
series.  Unfortunately, commit f1f6407221a0 ("test_librbd: add
diff_iterate test including discard"), also part of the same series,
added a test which expected the wrong behavior.  Very confusing!

A year later, a different manifestation of this bug was fixed in commit
9a1ab95176fe ("rbd: Fix rbd diff for non-existent objects"), but the
fix only covered the case where calc_snap_set_diff() goes past the end
snap ID while processing clones.  The case where it runs out of clones
to process before reaching the end snap ID remained mishandled.

A year after that, commit 3ccc3bb4bd35 ("librbd: diff_iterate needs to
handle holes in parent images") dropped the assert mentioned above and
this bug got enshrined in the newly introduced fast-diff mode.

Finally, a few years later, deep-copy actually started relying on this
bug in commit e5a21e904142 ("librbd: deep-copy image copy state machine
skips clean objects").  This necessitates bifurcation in DiffRequest
because deep-copy wants the "has this object been touched" semantics,
which is different from diff-iterate (and also potentially much more
expensive to produce!).

This commit brings a minimal update to TestMockObjectMapDiffRequest
tests and DiffIterateTest.DiffIterateDiscard.  Coverage is expanded in
the following commits.

Fixes: https://tracker.ceph.com/issues/53897
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
19 months agomgr/dashboard: added snap-schedule api and ui list 54750/head
Ivo Almeida [Sat, 25 Nov 2023 19:10:35 +0000 (19:10 +0000)]
mgr/dashboard: added snap-schedule api and ui list

Fixes: https://tracker.ceph.com/issues/63767
Signed-off-by: Ivo Almeida <ialmeida@redhat.com>
19 months agoMerge pull request #53830 from alimaredia/wip-test-librgw-file-sh-vstart
Casey Bodley [Mon, 11 Dec 2023 14:43:28 +0000 (14:43 +0000)]
Merge pull request #53830 from alimaredia/wip-test-librgw-file-sh-vstart

qa: enable test_librgw_file.sh to be run with vstart cluster

Reviewed-by: Casey Bodley <cbodley@redhat.com>
19 months agomgr/rgwam: period doesn't have a realm_name anymore 54864/head
Casey Bodley [Mon, 11 Dec 2023 14:12:24 +0000 (09:12 -0500)]
mgr/rgwam: period doesn't have a realm_name anymore

Fixes: https://tracker.ceph.com/issues/63783
Signed-off-by: Casey Bodley <cbodley@redhat.com>
19 months agoMerge PR #54726 into main
Patrick Donnelly [Mon, 11 Dec 2023 13:37:39 +0000 (08:37 -0500)]
Merge PR #54726 into main

* refs/pull/54726/head:
PendingReleaseNotes: announce cephfs-shell avail. on rhel9
qa: test fs:shell on all distros
qa: add cephfs-shell to installed rpm packages
ceph.spec.in: enable support for cephfs-shell by default via EPEL9

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
19 months agoMerge pull request #54779 from rishabh-d-dave/fs-release-notes
Rishabh Dave [Mon, 11 Dec 2023 11:02:48 +0000 (16:32 +0530)]
Merge pull request #54779 from rishabh-d-dave/fs-release-notes

cephfs: add a couple of release notes

Reviewed-by: Venky Shankar <vshankar@redhat.com>
19 months agoMerge pull request #54848 from idryomov/wip-diff-iterate-test-fixup
Ilya Dryomov [Mon, 11 Dec 2023 10:47:22 +0000 (11:47 +0100)]
Merge pull request #54848 from idryomov/wip-diff-iterate-test-fixup

test/librbd: close image in DiffIterateDeterministic

Reviewed-by: Mykola Golub <mgolub@suse.com>
19 months agoMerge pull request #54847 from idryomov/wip-journaling-test-fixups
Ilya Dryomov [Mon, 11 Dec 2023 10:08:08 +0000 (11:08 +0100)]
Merge pull request #54847 from idryomov/wip-journaling-test-fixups

test/librbd: avoid config-related crashes in DiscardWithPruneWriteOverlap

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
19 months agoMerge pull request #53054 from xxhdx1985126/wip-crimson-pg-proj-last-update
Samuel Just [Mon, 11 Dec 2023 04:01:05 +0000 (20:01 -0800)]
Merge pull request #53054 from xxhdx1985126/wip-crimson-pg-proj-last-update

crimson/osd/pg: set PG::projected_last_update when submitting transactions

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
19 months agoMerge pull request #53078 from xxhdx1985126/wip-crimson-pg-recovery
Samuel Just [Mon, 11 Dec 2023 04:00:31 +0000 (20:00 -0800)]
Merge pull request #53078 from xxhdx1985126/wip-crimson-pg-recovery

crimson/osd/pg_recovery: avoiding duplicated object recovering

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Matan Breizman <mbreizma@redhat.com>
19 months agoMerge pull request #53127 from xxhdx1985126/wip-crimson-obc-iteration
Samuel Just [Mon, 11 Dec 2023 03:59:30 +0000 (19:59 -0800)]
Merge pull request #53127 from xxhdx1985126/wip-crimson-obc-iteration

crimson/osd/pg: discard watches' states after iterating all cached obcs

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>