]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/log
ceph-ci.git
5 weeks agolibrbd/mirror/snapshot: add async create mirror group snapshot
Ramana Raja [Sun, 12 Jan 2025 21:01:23 +0000 (16:01 -0500)]
librbd/mirror/snapshot: add async create mirror group snapshot

Signed-off-by: Ramana Raja <rraja@redhat.com>
5 weeks agolibrbd/mirror/snapshot: add async group prepare images
Ramana Raja [Sun, 12 Jan 2025 20:56:20 +0000 (15:56 -0500)]
librbd/mirror/snapshot: add async group prepare images

... state machine class.

Signed-off-by: Ramana Raja <rraja@redhat.com>
5 weeks agolibrbd: add C and python bindings for async mirror gp snap info
Ramana Raja [Fri, 24 Jan 2025 23:34:06 +0000 (18:34 -0500)]
librbd: add C and python bindings for async mirror gp snap info

Signed-off-by: Ramana Raja <rraja@redhat.com>
5 weeks agolibrbd: add async state machine for "mirror_group_get_info"
Ramana Raja [Fri, 24 Jan 2025 22:29:51 +0000 (17:29 -0500)]
librbd: add async state machine for "mirror_group_get_info"

Signed-off-by: Ramana Raja <rraja@redhat.com>
5 weeks agomgr/rbd_support: disallow scheduling mirror snapshots
Ramana Raja [Thu, 12 Dec 2024 21:38:29 +0000 (16:38 -0500)]
mgr/rbd_support: disallow scheduling mirror snapshots

... of images that are part of a group.

Creating a global, pool or namespace level mirror snapshot
schedule shouldn't schedule mirror snapshots of images that
are part of a group and reside in the pool or namespace.

Also disallow directly scheduling mirror image snapshots on
images that are part of a group.

Signed-off-by: Ramana Raja <rraja@redhat.com>
5 weeks agoqa/workunits/rbd: add basic tests for mirror group snapshot scheduler
Ramana Raja [Tue, 5 Nov 2024 16:12:54 +0000 (11:12 -0500)]
qa/workunits/rbd: add basic tests for mirror group snapshot scheduler

Add tests to check the basic functionality of the
mirror_group_snapshot_schedule module. Check that
- `rbd mirror group snapshot schedule add/rm/status/ls` commands work
- the module can recover from blocklisting of its client and continue
  to process requests

Signed-off-by: Ramana Raja <rraja@redhat.com>
5 weeks agotools/rbd: add CLI to call into mirror group snapshot scheduler
Ramana Raja [Wed, 23 Oct 2024 17:20:37 +0000 (13:20 -0400)]
tools/rbd: add CLI to call into mirror group snapshot scheduler

Signed-off-by: Ramana Raja <rraja@redhat.com>
5 weeks agopybind/mgr/rbd_support: add scheduler for mirror group snapshots
Ramana Raja [Sun, 20 Oct 2024 15:54:55 +0000 (11:54 -0400)]
pybind/mgr/rbd_support: add scheduler for mirror group snapshots

Signed-off-by: Ramana Raja <rraja@redhat.com>
5 weeks agolibrbd: add API to fetch group name using group ID
Ramana Raja [Fri, 1 Nov 2024 22:02:16 +0000 (18:02 -0400)]
librbd: add API to fetch group name using group ID

Signed-off-by: Ramana Raja <rraja@redhat.com>
5 weeks agolibrbd: add python and C bindings for group_list2
Ramana Raja [Sun, 20 Oct 2024 23:50:04 +0000 (19:50 -0400)]
librbd: add python and C bindings for group_list2

... that lists IDs and names of groups in a pool.

Signed-off-by: Ramana Raja <rraja@redhat.com>
5 weeks agopybind/rbd: add interface to create mirror group snapshot
Ramana Raja [Tue, 6 Aug 2024 22:34:59 +0000 (18:34 -0400)]
pybind/rbd: add interface to create mirror group snapshot

... synchronously.

Signed-off-by: Ramana Raja <rraja@redhat.com>
5 weeks agopybind/rbd: add interfaces to fetch and list mirror group info
Ramana Raja [Tue, 6 Aug 2024 18:20:14 +0000 (14:20 -0400)]
pybind/rbd: add interfaces to fetch and list mirror group info

Signed-off-by: Ramana Raja <rraja@redhat.com>
5 weeks agolibrbd/api/Mirror: set the boolean field 'primary' in group_info and group_list
Ramana Raja [Tue, 29 Oct 2024 13:51:38 +0000 (09:51 -0400)]
librbd/api/Mirror: set the boolean field 'primary' in group_info and group_list

outputs to identify whether a mirror group is primary or not.

Signed-off-by: Ramana Raja <rraja@redhat.com>
5 weeks agocleanup: revert some of the unrequired changes
Vinay Bhaskar Varada [Mon, 3 Feb 2025 15:58:35 +0000 (21:28 +0530)]
cleanup: revert some of the unrequired changes

With this changes will be able to build and run librbd unit tests

Note: This changes will be later merged into the subsequent commits.

Signed-off-by: Vinay Bhaskar Varada <vvarada@redhat.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: more improvements in the group replayer
Prasanna Kumar Kalever [Thu, 30 Jan 2025 11:39:30 +0000 (17:09 +0530)]
rbd-mirror: more improvements in the group replayer

- Arresting the interruptions after shutdown
- Restart GroupReplayer if bootstrap returns remote group id as empty
- Fix a test failure in "regular group snapshots test"

Issue#23

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: create group snapshots only if remote group snapshot is complete
Prasanna Kumar Kalever [Tue, 28 Jan 2025 06:41:31 +0000 (12:11 +0530)]
rbd-mirror: create group snapshots only if remote group snapshot is complete

Also do not create a regular group snapshot until the next mirror group
snapshot is created. Otherwise we simply have an incomplete regular group
snapshot until the next mirror group snapshot is created.

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agocls/rbd: changes needed to align rest with the proposed ones
Prasanna Kumar Kalever [Fri, 22 Nov 2024 19:46:39 +0000 (01:16 +0530)]
cls/rbd: changes needed to align rest with the proposed ones

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agocls/rbd: proposed changes
Prasanna Kumar Kalever [Fri, 22 Nov 2024 16:26:20 +0000 (21:56 +0530)]
cls/rbd: proposed changes

Changes proposed by 'N Balachandran'

Signed-off-by: N Balachandran <nibalach@redhat.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: group replayer work in-progress changes
Prasanna Kumar Kalever [Tue, 22 Oct 2024 07:15:46 +0000 (12:45 +0530)]
rbd-mirror: group replayer work in-progress changes

This commit is a WIP targeting stability of tests failures, it might be diluted
into various existing commits

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agoqa/workunits/rbd: mirror group tests improvements
Prasanna Kumar Kalever [Fri, 22 Nov 2024 07:12:19 +0000 (12:42 +0530)]
qa/workunits/rbd: mirror group tests improvements

Signed-off-by: N Balachandran <nibalach@redhat.com>
Signed-off-by: John Agombar <agombar@uk.ibm.com>
Signed-off-by: Adam Lyon-Jones <adamlyon@uk.ibm.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: move the rename detection logic to snapshot GroupReplayer
Prasanna Kumar Kalever [Tue, 3 Sep 2024 16:03:53 +0000 (21:33 +0530)]
rbd-mirror: move the rename detection logic to snapshot GroupReplayer

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: use group_header object for resync flagging
Prasanna Kumar Kalever [Tue, 27 Aug 2024 07:03:21 +0000 (12:33 +0530)]
rbd-mirror: use group_header object for resync flagging

Also move the resync checks to snapshot GroupReplayer

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: rollback to last good snapshot just while force promote
Prasanna Kumar Kalever [Mon, 2 Sep 2024 08:54:35 +0000 (14:24 +0530)]
rbd-mirror: rollback to last good snapshot just while force promote

fix the group membership to match the rollback snapshot

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: fix the below bugs
Prasanna Kumar Kalever [Fri, 9 Aug 2024 06:33:12 +0000 (12:03 +0530)]
rbd-mirror: fix the below bugs

* fix braces in the imageMap update_images_added & update_images_removed
* do not allow image add from non-primary
* `down+unknown` status shown on querying individual images which are part
  of group enabled for mirroring
* `mirror pool status` shows down+unknown status
* fix imageMap being overwritten when multiple images are enabled for mirroring
* fix misleading error msg when getting status of a non-mirror enabled group

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: prune snapshots added to the list on image_replayer shutdown
Prasanna Kumar Kalever [Mon, 5 Aug 2024 04:14:38 +0000 (09:44 +0530)]
rbd-mirror: prune snapshots added to the list on image_replayer shutdown

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: discover primary demote snapshot in group_replayer
Prasanna Kumar Kalever [Thu, 1 Aug 2024 13:41:52 +0000 (19:11 +0530)]
rbd-mirror: discover primary demote snapshot in group_replayer

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: remove group snaps on primary at snapshot creation
Prasanna Kumar Kalever [Sun, 21 Jul 2024 15:52:12 +0000 (21:22 +0530)]
rbd-mirror: remove group snaps on primary at snapshot creation

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: Independent GroupReplayer
Prasanna Kumar Kalever [Mon, 5 Aug 2024 06:35:26 +0000 (12:05 +0530)]
rbd-mirror: Independent GroupReplayer

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agoqa/workunits/rbd: mirror group functional tests
Mykola Golub [Fri, 12 Mar 2021 11:57:57 +0000 (11:57 +0000)]
qa/workunits/rbd: mirror group functional tests

Also sets the RBD_MIRROR_INSTANCES to 1 to avoid any deviations.

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: implement group resync functionality
Prasanna Kumar Kalever [Fri, 3 May 2024 08:16:53 +0000 (13:46 +0530)]
rbd-mirror: implement group resync functionality

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: support mirroring regular non-mirror group snapshots
Prasanna Kumar Kalever [Mon, 22 Apr 2024 11:37:01 +0000 (17:07 +0530)]
rbd-mirror: support mirroring regular non-mirror group snapshots

This commit also enable deep copying `.group` snaps.

$ rbd --cluster site-a snap ls pool1/test_image1 --all --debug-rbd=0
SNAPID  NAME                                                                                       SIZE     PROTECTED  TIMESTAMP                 NAMESPACE
     4  .group.2_10416b8b4567_104d6b8b4567                                                         128 MiB             Mon Apr 22 17:07:57 2024  group (pool1/test_group@group_snap1)
     7  .group.2_10416b8b4567_104f6b8b4567                                                         128 MiB             Mon Apr 22 17:07:59 2024  group (pool1/test_group@group_snap2)
     8  .mirror.primary.72855be4-1ffb-4094-8426-fb1d5f082c21.71b62dad-f515-43cf-91b2-bf1225c5a0fc  128 MiB             Mon Apr 22 17:08:03 2024  mirror (primary peer_uuids:[5f9ea7aa-fa5b-4d2e-a098-3afe006361aa])

$ rbd --cluster site-b snap ls pool1/test_image1 --all --debug-rbd=0
SNAPID  NAME                                                                                           SIZE     PROTECTED  TIMESTAMP                 NAMESPACE
     5  .group.2_10416b8b4567_104d6b8b4567                                                             128 MiB             Mon Apr 22 17:08:07 2024  group
     7  .group.2_10416b8b4567_104f6b8b4567                                                             128 MiB             Mon Apr 22 17:08:08 2024  group
     8  .mirror.non_primary.72855be4-1ffb-4094-8426-fb1d5f082c21.64488da7-3350-4d04-8e4d-90047182e004  128 MiB             Mon Apr 22 17:08:09 2024  mirror (non-primary peer_uuids:[] 6d963873-6679-483b-b05a-8bf2536f4fdf:8 copied)

$ rbd --cluster site-a group snap ls pool1/test_group --debug-rbd=0
NAME                                 STATUS
group_snap1                              ok
group_snap2                              ok
.mirror.2_10416b8b4567_10536b8b4567      ok

$ rbd --cluster site-b group snap ls pool1/test_group --debug-rbd=0
NAME                                 STATUS
.mirror.2_10376b8b4567_1037327b23c6      ok
group_snap1                              ok
group_snap2                              ok
.mirror.2_10416b8b4567_10536b8b4567      ok

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: support rename with group mirroring
Prasanna Kumar Kalever [Fri, 26 Apr 2024 15:33:28 +0000 (21:03 +0530)]
rbd-mirror: support rename with group mirroring

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: add undo code, exclusive locking and quiescing
Prasanna Kumar Kalever [Mon, 26 Feb 2024 08:53:28 +0000 (14:23 +0530)]
rbd-mirror: add undo code, exclusive locking and quiescing

* add essential logic to undo partially succeeded API's like, group promote,
  group demote, group enable, group disable, group image add and
  group image remove
* add exclusive locking and quiescing with-in all the required group API's
* adress code duplication and optimization with in the group API's

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: address partial group snapshots case
Prasanna Kumar Kalever [Wed, 14 Feb 2024 15:01:21 +0000 (20:31 +0530)]
rbd-mirror: address partial group snapshots case

Make sure group snapshots doesn't get copied to secondary if the group snapshot
is incomplete on primary. On creation time of a group snapshots on primary,
make sure to delete the previous snapshot in case it is incomplete.

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: request group snapshot creation when creating group image snapshot
Mykola Golub [Thu, 18 Mar 2021 18:38:26 +0000 (18:38 +0000)]
rbd-mirror: request group snapshot creation when creating group image snapshot

It makes the group image replayers to synchronize and to have the
group snapshot created.

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: unlink group snapshot when pruning non-primary snapshot
Mykola Golub [Fri, 19 Mar 2021 13:09:35 +0000 (13:09 +0000)]
rbd-mirror: unlink group snapshot when pruning non-primary snapshot

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: initial group replayer implementation
Mykola Golub [Sun, 17 Jan 2021 10:36:02 +0000 (10:36 +0000)]
rbd-mirror: initial group replayer implementation

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: hook GroupReplayer
Mykola Golub [Tue, 5 Jan 2021 16:18:57 +0000 (16:18 +0000)]
rbd-mirror: hook GroupReplayer

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: make pool watcher also refresh groups
Mykola Golub [Thu, 21 Jan 2021 09:18:36 +0000 (09:18 +0000)]
rbd-mirror: make pool watcher also refresh groups

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: introduce generalized mirror entity (type, global_id, size)
Mykola Golub [Wed, 30 Dec 2020 16:37:31 +0000 (16:37 +0000)]
rbd-mirror: introduce generalized mirror entity (type, global_id, size)

where type may be image or group. Make pool watcher and image
mapper use it currently for images. The group support is coming.

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd-mirror: remove dead code
Mykola Golub [Fri, 25 Dec 2020 09:28:37 +0000 (09:28 +0000)]
rbd-mirror: remove dead code

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agorbd: add 'mirror group' commands
Mykola Golub [Sun, 13 Dec 2020 16:01:15 +0000 (16:01 +0000)]
rbd: add 'mirror group' commands

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agolibrbd: link group snapshot when creating non-primary snapshot
Mykola Golub [Fri, 19 Mar 2021 14:37:17 +0000 (14:37 +0000)]
librbd: link group snapshot when creating non-primary snapshot

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agolibrbd: unlink group snapshot when removing mirror snapshot
Mykola Golub [Fri, 19 Feb 2021 17:57:06 +0000 (17:57 +0000)]
librbd: unlink group snapshot when removing mirror snapshot

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agolibrbd: allow to add image to group on creation
Mykola Golub [Wed, 27 Jan 2021 17:23:52 +0000 (17:23 +0000)]
librbd: allow to add image to group on creation

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agolibrbd: add mirror group API
Mykola Golub [Sat, 28 Nov 2020 10:15:26 +0000 (10:15 +0000)]
librbd: add mirror group API

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agolibrbd: don't send 'image updated' notifications
Mykola Golub [Fri, 18 Dec 2020 10:15:11 +0000 (10:15 +0000)]
librbd: don't send 'image updated' notifications

when enabling/disabling group mirroring

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agolibrbd: introduce 'group updated' mirroring watcher notification
Mykola Golub [Thu, 17 Dec 2020 12:22:57 +0000 (12:22 +0000)]
librbd: introduce 'group updated' mirroring watcher notification

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agolibrbd: introduce 'group add/remove image' async requests
Mykola Golub [Wed, 27 Jan 2021 17:19:32 +0000 (17:19 +0000)]
librbd: introduce 'group add/remove image' async requests

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agolibrbd/api: assume user namespace for group snapshot
Mykola Golub [Fri, 23 Jul 2021 15:04:48 +0000 (16:04 +0100)]
librbd/api: assume user namespace for group snapshot

when the snapshot is specified by name only

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agocls/rbd: add method to unlink image snapshot from group snapshot
Mykola Golub [Thu, 18 Feb 2021 12:41:53 +0000 (12:41 +0000)]
cls/rbd: add method to unlink image snapshot from group snapshot

When no image snapshots are left the group snapshot will be
automatically removed.

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agocls/rbd: make possible mirror_image_list filter out group images
Mykola Golub [Tue, 19 Jan 2021 13:48:07 +0000 (13:48 +0000)]
cls/rbd: make possible mirror_image_list filter out group images

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agocls/rbd: add async versions of some group functions
Mykola Golub [Fri, 15 Jan 2021 16:23:37 +0000 (16:23 +0000)]
cls/rbd: add async versions of some group functions

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agocls/rbd: add group_spec and group_snap_id to mirror snapshot
Mykola Golub [Mon, 7 Dec 2020 10:40:40 +0000 (10:40 +0000)]
cls/rbd: add group_spec and group_snap_id to mirror snapshot

which are going to be used when creating a group mirror snapshot.

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agocls/rbd: add mirror group types and methods
Mykola Golub [Sat, 28 Nov 2020 10:14:27 +0000 (10:14 +0000)]
cls/rbd: add mirror group types and methods

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agocls/rbd: add group snapshot namespace
Mykola Golub [Sun, 6 Dec 2020 13:12:39 +0000 (13:12 +0000)]
cls/rbd: add group snapshot namespace

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
5 weeks agocls/rbd: rename GroupSnapshotNamespace to GroupImageSnapshotNamespace
Mykola Golub [Wed, 23 Jun 2021 16:56:20 +0000 (17:56 +0100)]
cls/rbd: rename GroupSnapshotNamespace to GroupImageSnapshotNamespace

Signed-off-by: Mykola Golub <mgolub@suse.com>
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
3 months agoMerge pull request #64757 from VinayBhaskar-V/wip-unittest-72325
Ilya Dryomov [Wed, 30 Jul 2025 18:39:22 +0000 (20:39 +0200)]
Merge pull request #64757 from VinayBhaskar-V/wip-unittest-72325

test/rbd-mirror: eliminate a race in ResyncRequestedRemoteNotPrimary

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
3 months agoMerge pull request #64750 from bluikko/doc-bucketops-fixes-plus-radosgw
Anthony D'Atri [Wed, 30 Jul 2025 17:35:24 +0000 (13:35 -0400)]
Merge pull request #64750 from bluikko/doc-bucketops-fixes-plus-radosgw

doc/radosgw: Simple fixes and improvements, links improvements

3 months agoMerge pull request #64565 from synarete/ss-samba-metrics-image-devbuilds-centos-amd64
Adam King [Wed, 30 Jul 2025 15:40:07 +0000 (11:40 -0400)]
Merge pull request #64565 from synarete/ss-samba-metrics-image-devbuilds-centos-amd64

mgr/cephadm: use same tag for all samba images

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: John Mulligan <jmulligan@redhat.com>
3 months agoMerge pull request #64737 from zdover23/wip-doc-2025-07-29-cephfs-ceph-dokan
Zac Dover [Wed, 30 Jul 2025 13:29:02 +0000 (23:29 +1000)]
Merge pull request #64737 from zdover23/wip-doc-2025-07-29-cephfs-ceph-dokan

doc/cephfs: edit ceph-dokan.rst (2 of x)

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
3 months agotest/rbd-mirror: eliminate a race in ResyncRequestedRemoteNotPrimary
VinayBhaskar-V [Wed, 30 Jul 2025 10:10:27 +0000 (10:10 +0000)]
test/rbd-mirror: eliminate a race in ResyncRequestedRemoteNotPrimary

Adjust the wait_for_notification call in TestMockImageReplayerSnapshotReplayer.ResyncRequestedRemoteNotPrimary
to expect 2 notifications instead of 1. This allows the test to correctly wait for both expected events
i.e for finish_sync() and handle_replay_complete(locker, -EREMOTEIO, "remote image demoted"), ensuring the
replayer transitions to STATE_COMPLETE and is_replaying() returns false as intended.

Fixes: https://tracker.ceph.com/issues/72325
Signed-off-by: VinayBhaskar-V <vvarada@redhat.com>
3 months agoMerge pull request #64351 from ifed01/wip-ifed-discard-threads-better-lifecycle
Igor Fedotov [Wed, 30 Jul 2025 11:25:42 +0000 (14:25 +0300)]
Merge pull request #64351 from ifed01/wip-ifed-discard-threads-better-lifecycle

blk/kernel: improve DiscardThread life cycle.

Reviewed-by: Yite Gu <guyite@bytedance.com>
3 months agoMerge pull request #64060 from zhscn/wip-seastore-2q
Matan Breizman [Wed, 30 Jul 2025 08:03:54 +0000 (11:03 +0300)]
Merge pull request #64060 from zhscn/wip-seastore-2q

crimson/os/seastore: introduce 2Q cache replacement algorithm

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
3 months agoMerge pull request #64452 from xxhdx1985126/wip-72087
Matan Breizman [Wed, 30 Jul 2025 07:38:15 +0000 (10:38 +0300)]
Merge pull request #64452 from xxhdx1985126/wip-72087

crimson/os/seastore/epm: make max_generation and gc_formula configurable

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
3 months agoMerge pull request #64617 from xxhdx1985126/wip-seastore-invalidate-logical
Matan Breizman [Wed, 30 Jul 2025 07:37:58 +0000 (10:37 +0300)]
Merge pull request #64617 from xxhdx1985126/wip-seastore-invalidate-logical

crimson/os/seastore/logical_child_node: LogicalChildNode should respond to the invalidation event

Reviewed-by: Samuel Just <sjust@redhat.com>
3 months agoMerge pull request #63604 from guojidan/kv-tool
Matan Breizman [Wed, 30 Jul 2025 07:25:47 +0000 (10:25 +0300)]
Merge pull request #63604 from guojidan/kv-tool

crimson: Add objectstore tool with partial functionality

Reviewed-by: Aishwarya Mathuria <amathuri@redhat.com>
3 months agodoc/radosgw: Simple fixes and improvements, links improvements
Ville Ojamo [Fri, 18 Jul 2025 05:53:08 +0000 (12:53 +0700)]
doc/radosgw: Simple fixes and improvements, links improvements

Fix table with a column separator problem in s3/bucketops.rst.

Remove whitespaces at end of lines in s3/bucketops.rst.

Linkify mention of multizone into multisite.rst in bucket_logging.rst.

Separate units from numbers with a space in bucket_logging.rst

Consistency in capitalization and full stop usage in table data in
s3-notification-compatibility.rst s3/bucketops.rst.

Use ref for intra-docs link instead of "external links" feature in
s3/bucketops.rst notifications.rst s3.rst, add a label in start of
s3-notification-compatibility.rst for it. Follow label format that seems
to be in the majority.
Use auto-generated link text that ref provides.
Reflow the text in the cell. Extend table syntax width to accommodate
longer text in cell.

Use ref similarly on links to s3/bucketops.rst. Add a label in it and
use it from bucket_logging.rst and notifications.rst.

Delete unused external link definition in s3/bucketops.rst.

Remove multiple whitespace at the end of lines in notifications.rst
s3-notification-compatibility.rst bucketops.rst.

Change tab characters to spaces in indentation in bucketops.rst

Signed-off-by: Ville Ojamo <14869000+bluikko@users.noreply.github.com>
3 months agoMerge pull request #64070 from samarahu/samarahu-get-storage-admin
Samarah Uriarte [Tue, 29 Jul 2025 15:22:11 +0000 (10:22 -0500)]
Merge pull request #64070 from samarahu/samarahu-get-storage-admin

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
3 months agoMerge pull request #64733 from stackhpc/doc-fix-mclock-links
Anthony D'Atri [Tue, 29 Jul 2025 14:44:34 +0000 (10:44 -0400)]
Merge pull request #64733 from stackhpc/doc-fix-mclock-links

doc: Fix links to mClock config reference

3 months agoMerge pull request #64466 from chanyoung/fix-list-complete
Matan Breizman [Tue, 29 Jul 2025 14:05:33 +0000 (17:05 +0300)]
Merge pull request #64466 from chanyoung/fix-list-complete

crimson/.../omap_btree_node_impl: fix complete flag for depth 2 omap scan

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
3 months agoqa/suites/crimson-rados: Introduce objectstore_tool testing
Matan Breizman [Wed, 23 Jul 2025 13:20:04 +0000 (13:20 +0000)]
qa/suites/crimson-rados: Introduce objectstore_tool testing

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
3 months agoqa/tasks/ceph_objectstore_tool: Support Crimson tool
Matan Breizman [Wed, 23 Jul 2025 13:18:46 +0000 (13:18 +0000)]
qa/tasks/ceph_objectstore_tool: Support Crimson tool

fixes: https://tracker.ceph.com/issues/71504

Signed-off-by: junxiang Mu <1948535941@qq.com>
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
3 months agoMerge pull request #64323 from guits/cv-seastore
Adam King [Tue, 29 Jul 2025 13:38:25 +0000 (09:38 -0400)]
Merge pull request #64323 from guits/cv-seastore

ceph-volume: add seastore OSDs support

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
3 months agodoc/cephfs: edit ceph-dokan.rst (2 of x)
Zac Dover [Tue, 29 Jul 2025 12:37:07 +0000 (22:37 +1000)]
doc/cephfs: edit ceph-dokan.rst (2 of x)

Edit the last half of doc/cephfs/ceph-dokan.rst. This is part of a
larger project whose goal is the improvement of the CephFS
documentation.

Follows https://github.com/ceph/ceph/pull/64690.

Signed-off-by: Zac Dover <zac.dover@proton.me>
3 months agodoc: Fix links to mClock config reference
Pierre Riteau [Tue, 29 Jul 2025 09:44:52 +0000 (11:44 +0200)]
doc: Fix links to mClock config reference

Signed-off-by: Pierre Riteau <pierre@stackhpc.com>
3 months agoMerge pull request #63555 from Matan-B/wip-matanb-crimson-asock-race-coro
Matan Breizman [Tue, 29 Jul 2025 09:29:40 +0000 (12:29 +0300)]
Merge pull request #63555 from Matan-B/wip-matanb-crimson-asock-race-coro

crimson/osd: committed/handle_osd_maps into coroutines

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Aishwarya Mathuria <amathuri@redhat.com>
3 months agoMerge pull request #63270 from VinayBhaskar-V/wip-resync-changes
Ilya Dryomov [Tue, 29 Jul 2025 07:24:55 +0000 (09:24 +0200)]
Merge pull request #63270 from VinayBhaskar-V/wip-resync-changes

rbd-mirror: prevent image deletion if remote image is not primary

Reviewed-by: Ramana Raja <rraja@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
3 months agoMerge pull request #64601 from tchaikov/wip-dencoder-without-hitset
Kefu Chai [Tue, 29 Jul 2025 01:49:44 +0000 (09:49 +0800)]
Merge pull request #64601 from tchaikov/wip-dencoder-without-hitset

tools/ceph-dencoder: do not test HitSet types

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
3 months agoMerge pull request #64705 from tchaikov/wip-pybind-setup-license-classifier
Ilya Dryomov [Mon, 28 Jul 2025 21:33:26 +0000 (23:33 +0200)]
Merge pull request #64705 from tchaikov/wip-pybind-setup-license-classifier

pybind: replace deprecated license classifiers with SPDX expression

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: John Mulligan <jmulligan@redhat.com>
3 months agoMerge pull request #64711 from idryomov/wip-72134-cont
Ilya Dryomov [Mon, 28 Jul 2025 18:27:01 +0000 (20:27 +0200)]
Merge pull request #64711 from idryomov/wip-72134-cont

qa/suites/krbd: request msgr1 explicitly in unmap subsuite

Reviewed-by: Miki Patel <miki.patel132@gmail.com>
3 months agoMerge pull request #64583 from ceph/wip-yuriw-release-19.2.3-main
Yuri Weinstein [Mon, 28 Jul 2025 14:54:21 +0000 (07:54 -0700)]
Merge pull request #64583 from ceph/wip-yuriw-release-19.2.3-main

doc: squid 19.2.3 release notes

Reviewed-by: Adam Emerson <aemerson@redhat.com>
Reviewed-by: Laura Flores <lflores@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
3 months agoMerge pull request #63348 from AliMasarweh/wip-alimasa-68183
Ali Masarwa [Mon, 28 Jul 2025 13:55:06 +0000 (16:55 +0300)]
Merge pull request #63348 from AliMasarweh/wip-alimasa-68183

RGW | fix conditional Delete, MultiDelete and Put

Reviewed-by: Casey Bodley <cbodley@redhat.com>, Matt Benjamin <mbenjamin@redhat.com>
3 months agoMerge pull request #64503 from Matan-B/wip-matanb-crimson-misdirected-fix
Matan Breizman [Mon, 28 Jul 2025 10:34:56 +0000 (13:34 +0300)]
Merge pull request #64503 from Matan-B/wip-matanb-crimson-misdirected-fix

crimson/osd/../client_request: fix is_misdirected

Reviewed-by: Samuel Just <sjust@redhat.com>
3 months agoqa/suites/krbd: request msgr1 explicitly in unmap subsuite
Ilya Dryomov [Mon, 28 Jul 2025 07:01:34 +0000 (09:01 +0200)]
qa/suites/krbd: request msgr1 explicitly in unmap subsuite

Since commit 5011cc926cd4 ("qa/suites/krbd: run unmap subsuite with
msgr1 only"), unmap.t is run only against msgr1.  pre-single-major.yaml
kernel has actually been gone for some time now, but there is still
value in maintaining a msgr1-only test.  With the default switched to
msgr2 in commit a577f6fa405c ("krbd: "rbd device map" command should
use msgr2 by default"), msgr1 needs to be requested explicitly.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
3 months agodoc/man/rbd: update ms_mode default (legacy -> prefer-crc)
Ilya Dryomov [Sat, 26 Jul 2025 09:35:08 +0000 (11:35 +0200)]
doc/man/rbd: update ms_mode default (legacy -> prefer-crc)

The default was switched to msgr2 in prefer-crc mode in commit
a577f6fa405c ("krbd: "rbd device map" command should use msgr2 by
default").

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
3 months agoMerge pull request #63945 from ArbitCode/wip-raja-get-account-summary
Raja [Mon, 28 Jul 2025 05:26:26 +0000 (10:56 +0530)]
Merge pull request #63945 from ArbitCode/wip-raja-get-account-summary

rgw/iam: getAccountSummary API

3 months agoMerge pull request #64592 from ArbitCode/wip-raja-get-caller-identity-docs
Raja [Mon, 28 Jul 2025 05:25:59 +0000 (10:55 +0530)]
Merge pull request #64592 from ArbitCode/wip-raja-get-caller-identity-docs

doc/radosgw: get caller identity docs

3 months agoMerge pull request #64289 from sseshasa/wip-mclock-new-benchmark-mechanism
Sridhar Seshasayee [Mon, 28 Jul 2025 03:39:10 +0000 (09:09 +0530)]
Merge pull request #64289 from sseshasa/wip-mclock-new-benchmark-mechanism

src/ceph_osd, osd: Implement running benchmark during OSD creation - Phase 1

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
3 months agocrimson/osd/../client_request: drop rwoedered with balanced/localize reads
Matan Breizman [Tue, 15 Jul 2025 08:24:22 +0000 (08:24 +0000)]
crimson/osd/../client_request: drop rwoedered with balanced/localize reads

This is the counterpart of https://github.com/ceph/ceph/pull/62806
Which fixes classical: https://tracker.ceph.com/issues/70715

Fixes: https://tracker.ceph.com/issues/71007
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
3 months agocrimson/osd/../client_request: rename is_misdirected and add logs
Matan Breizman [Tue, 15 Jul 2025 08:24:06 +0000 (08:24 +0000)]
crimson/osd/../client_request: rename is_misdirected and add logs

This function mainly verifies replicated read related info.

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
3 months agocrimson/osd: handle_osd_map to coroutines
Matan Breizman [Tue, 8 Jul 2025 14:40:16 +0000 (14:40 +0000)]
crimson/osd: handle_osd_map to coroutines

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
3 months agocrimson/osd: committed_osd_maps into coroutines
Matan Breizman [Wed, 28 May 2025 10:48:38 +0000 (10:48 +0000)]
crimson/osd: committed_osd_maps into coroutines

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
3 months agocrimson/osd: committed_osd_maps fix paramter types
Matan Breizman [Tue, 27 May 2025 12:24:43 +0000 (12:24 +0000)]
crimson/osd: committed_osd_maps fix paramter types

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
3 months agoMerge pull request #64593 from chanyoung/fix-omap-iterate
Matan Breizman [Sun, 27 Jul 2025 10:34:15 +0000 (13:34 +0300)]
Merge pull request #64593 from chanyoung/fix-omap-iterate

crimson/.../omap_btree_node_impl: fix inner node iterate

Reviewed-by: Xuehan Xu <xuxuehan@qianxin.com>
3 months agoMerge pull request #64585 from myoungwon/wip-parallel-write-ool
Matan Breizman [Sun, 27 Jul 2025 10:33:54 +0000 (13:33 +0300)]
Merge pull request #64585 from myoungwon/wip-parallel-write-ool

crimson/os/seastore/rbm: improve large sequential write by issuing writes in parallel

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Xuehan Xu <xuxuehan@qianxin.com>
3 months agoMerge pull request #64498 from xxhdx1985126/wip-seastore-io-block-time
Matan Breizman [Sun, 27 Jul 2025 10:32:11 +0000 (13:32 +0300)]
Merge pull request #64498 from xxhdx1985126/wip-seastore-io-block-time

crimson/os/seastore/async_cleaner: measure io block time

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
3 months agopybind: replace deprecated license classifiers with SPDX expression
Kefu Chai [Sun, 27 Jul 2025 08:02:51 +0000 (16:02 +0800)]
pybind: replace deprecated license classifiers with SPDX expression

Replace the deprecated "License :: OSI Approved :: GNU Lesser General
Public License v2 or later (LGPLv2+)" classifier with the SPDX license
expression "LGPL-2.0-or-later" in the license field.

Recent setuptools versions warn that license classifiers are deprecated
in favor of SPDX expressions in the license field. This change eliminates
the deprecation warning while maintaining the same licensing terms.

References:
- https://setuptools.pypa.io/en/stable/history.html#v77-0-0
- https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license
- https://spdx.org/licenses/LGPL-2.0-or-later.html

The warning looked like:
```
[1/1] Generating ../../../lib/cython_modules/lib.3/rados.cpython-313-x86_64-linux-gnu.so
/usr/lib/python3.13/site-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated.
!!

        ********************************************************************************
        Please consider removing the following classifiers in favor of a SPDX license expression:

        License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)

        See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
        ********************************************************************************

!!
  self._finalize_license_expression()
```

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 months agoMerge pull request #64418 from ifed01/wip-ifed-discard-mkfs
SrinivasaBharathKanta [Sat, 26 Jul 2025 00:22:42 +0000 (05:52 +0530)]
Merge pull request #64418 from ifed01/wip-ifed-discard-mkfs

os/bluestore: make full device discard on mkfs a default behavior

3 months agoMerge pull request #64142 from phlogistonjohn/jjm-smb-ip-bind
Adam King [Fri, 25 Jul 2025 17:45:41 +0000 (13:45 -0400)]
Merge pull request #64142 from phlogistonjohn/jjm-smb-ip-bind

smb: support custom ip address binds

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Anoop C S <anoopcs@cryptolab.net>