]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
23 months agoMerge pull request #52625 from nbalacha/wip-62111-pacific
Yuri Weinstein [Mon, 21 Aug 2023 14:27:23 +0000 (07:27 -0700)]
Merge pull request #52625 from nbalacha/wip-62111-pacific

pacific: rbd-mirror: fix race preventing local image deletion

Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
Reviewed-by: Mykola Golub <mgolub@suse.com>
23 months agoMerge pull request #52883 from ajarr/wip-59737-pacific
Yuri Weinstein [Mon, 21 Aug 2023 14:26:14 +0000 (07:26 -0700)]
Merge pull request #52883 from ajarr/wip-59737-pacific

pacific: mgr: store names of modules that register RADOS clients in the MgrMap

Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
23 months agoMerge pull request #51464 from ajarr/wip-59712-pacific
Yuri Weinstein [Mon, 21 Aug 2023 14:25:47 +0000 (07:25 -0700)]
Merge pull request #51464 from ajarr/wip-59712-pacific

pacific:  mgr/rbd_support: fixes related to recover from rados client blocklisting

Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
23 months agoMerge pull request #52943 from YiteGu/fix-duplicate-onode-miss-statistics
Yuri Weinstein [Thu, 17 Aug 2023 21:15:37 +0000 (14:15 -0700)]
Merge pull request #52943 from YiteGu/fix-duplicate-onode-miss-statistics

pacific: os/bluestore: don't need separate variable to mark hits when lookup oid.

Reviewed-by: Igor Fedotov <ifedotov@suse.com>
23 months agoMerge pull request #51487 from vshankar/tr-59720
Yuri Weinstein [Thu, 17 Aug 2023 16:17:48 +0000 (09:17 -0700)]
Merge pull request #51487 from vshankar/tr-59720

pacific: client: use deep-copy when setting permission during make_request

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
23 months agoMerge pull request #52953 from k0ste/wip-62116-pacific
Yuri Weinstein [Thu, 17 Aug 2023 15:36:55 +0000 (08:36 -0700)]
Merge pull request #52953 from k0ste/wip-62116-pacific

pacific: qa: use parallel gzip for compressing logs

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
23 months agoMerge pull request #52900 from leonid-s-usov/backport/bulk-data-pool/pacific
Yuri Weinstein [Thu, 17 Aug 2023 15:36:13 +0000 (08:36 -0700)]
Merge pull request #52900 from leonid-s-usov/backport/bulk-data-pool/pacific

pacific: Consider setting "bulk" autoscale pool flag when automatically creating a data pool for CephFS

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
23 months agoMerge pull request #52848 from lxbsz/wip-62193
Yuri Weinstein [Thu, 17 Aug 2023 15:35:48 +0000 (08:35 -0700)]
Merge pull request #52848 from lxbsz/wip-62193

pacific: mds: do not send split_realms for CEPH_SNAP_OP_UPDATE msg

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
23 months agoMerge pull request #52844 from lxbsz/wip-62202
Yuri Weinstein [Thu, 17 Aug 2023 15:35:22 +0000 (08:35 -0700)]
Merge pull request #52844 from lxbsz/wip-62202

pacific: mds: skip forwarding request if the session were removed

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
23 months agoMerge pull request #52726 from kotreshhr/wip-62242-pacific
Yuri Weinstein [Thu, 17 Aug 2023 15:34:57 +0000 (08:34 -0700)]
Merge pull request #52726 from kotreshhr/wip-62242-pacific

pacific: mds: Fix the linkmerge assert check

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
23 months agoMerge pull request #52682 from batrick/wip-62190-pacific
Yuri Weinstein [Thu, 17 Aug 2023 15:34:11 +0000 (08:34 -0700)]
Merge pull request #52682 from batrick/wip-62190-pacific

pacific: mds: update mdlog perf counters during replay

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
23 months agoMerge pull request #53002 from idryomov/wip-62437-pacific
Ilya Dryomov [Thu, 17 Aug 2023 10:22:11 +0000 (12:22 +0200)]
Merge pull request #53002 from idryomov/wip-62437-pacific

pacific: qa/suites/upgrade/octopus-x: skip TestClsRbd.mirror_snapshot test

Reviewed-by: Mykola Golub <mgolub@suse.com>
23 months agoMerge pull request #51039 from vshankar/tr-59003
Yuri Weinstein [Wed, 16 Aug 2023 16:22:15 +0000 (09:22 -0700)]
Merge pull request #51039 from vshankar/tr-59003

pacific: mgr/volumes: avoid returning -ESHUTDOWN back to cli

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
23 months agoMerge pull request #52873 from ifed01/wip-ifed-encrypted-ceph-volume-pac
Yuri Weinstein [Tue, 15 Aug 2023 20:59:37 +0000 (13:59 -0700)]
Merge pull request #52873 from ifed01/wip-ifed-encrypted-ceph-volume-pac

pacific: ceph_volume: support encrypted volumes for lvm new-db/new-wal/migrate commands

Reviewed-by: Guillaume Abrioux <gabrioux@redhat.com>
23 months agoMerge pull request #52212 from ifed01/wip-ifed-bluefs-cumulative-backports-pac
Yuri Weinstein [Tue, 15 Aug 2023 20:58:24 +0000 (13:58 -0700)]
Merge pull request #52212 from ifed01/wip-ifed-bluefs-cumulative-backports-pac

pacific: os/bluestore: cumulative bluefs backport

Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
23 months agoMerge pull request #51773 from ifed01/wip-ifed-fix-bluefs-prealloc-pac
Yuri Weinstein [Tue, 15 Aug 2023 20:56:56 +0000 (13:56 -0700)]
Merge pull request #51773 from ifed01/wip-ifed-fix-bluefs-prealloc-pac

pacific: os/bluestore: proper override rocksdb::WritableFile::Allocate

Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
23 months agoMerge pull request #51418 from ifed01/wip-ifed-fix-fit-to-fast-pac
Yuri Weinstein [Tue, 15 Aug 2023 20:55:52 +0000 (13:55 -0700)]
Merge pull request #51418 from ifed01/wip-ifed-fix-fit-to-fast-pac

pacific: os/bluestore: allow 'fit_to_fast' selector for single-volume osd

Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
23 months agoqa/suites/upgrade/octopus-x: skip TestClsRbd.mirror_snapshot test 53002/head
Ilya Dryomov [Mon, 14 Aug 2023 11:16:59 +0000 (13:16 +0200)]
qa/suites/upgrade/octopus-x: skip TestClsRbd.mirror_snapshot test

The behavior of the class method changed in reef; the change was
backported to pacific and quincy.  An octopus test binary used against
pacific OSDs produces an expected failure:

    [ RUN      ] TestClsRbd.mirror_snapshot
    .../ceph-15.2.17/src/test/cls_rbd/test_cls_rbd.cc:2279: Failure
    Expected equality of these values:
      -85
      mirror_image_snapshot_unlink_peer(&ioctx, oid, 1, "peer2")
        Which is: 0
    [  FAILED  ] TestClsRbd.mirror_snapshot (6 ms)

Fixes: https://tracker.ceph.com/issues/62437
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
23 months agomon/MDSMonitor: print a note when adding data pool to a file system that doesn't... 52900/head
Leonid Usov [Thu, 3 Aug 2023 16:47:31 +0000 (19:47 +0300)]
mon/MDSMonitor: print a note when adding data pool to a file system that doesn't have 'bulk' flag set

The note will only be printed if the pool has pg_autoscale_mode set to ON and the bulk flag is missing

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
(cherry picked from commit 7d09154ce87d24993f605c8bbf829d6415b89562)

23 months agomgr/volumes: set the 'bulk' flag for data pools created automatically for a new volume
Leonid Usov [Thu, 3 Aug 2023 16:41:12 +0000 (19:41 +0300)]
mgr/volumes: set the 'bulk' flag for data pools created automatically for a new volume

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
Fixes: https://tracker.ceph.com/issues/61595
(cherry picked from commit 9a8219cc2bab2b5d4c0cc26783eac0ae87a8b24b)

23 months agoMerge pull request #52468 from k0ste/wip-62031-pacific
Yuri Weinstein [Fri, 11 Aug 2023 15:28:26 +0000 (08:28 -0700)]
Merge pull request #52468 from k0ste/wip-62031-pacific

pacific: mon/ConfigMonitor: update crush_location from osd entity

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
23 months agoMerge pull request #51812 from NitzanMordhai/wip-61488-pacific
Yuri Weinstein [Fri, 11 Aug 2023 15:27:46 +0000 (08:27 -0700)]
Merge pull request #51812 from NitzanMordhai/wip-61488-pacific

pacific: pybind/argparse: blocklist ip validation

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
23 months agoqa: time log compression 52953/head
Patrick Donnelly [Wed, 22 Mar 2023 14:20:21 +0000 (10:20 -0400)]
qa: time log compression

For debugging and ad-hoc analytics.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 6739e1156350be7032f8832c04cf28da79e9c4d9)

23 months agoqa/tasks: give verbose gzip output
Patrick Donnelly [Tue, 21 Mar 2023 20:42:24 +0000 (16:42 -0400)]
qa/tasks: give verbose gzip output

For future analysis.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 0a03a47103e465dbd546e0495f8e7720402fbe6f)

23 months agoqa/tasks: use medium compression
Patrick Donnelly [Tue, 21 Mar 2023 20:41:17 +0000 (16:41 -0400)]
qa/tasks: use medium compression

To speed up compression.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 3c76cc3c5172591cdfd88b3d0f29298aba6fde9c)

23 months agoqa/ceph: parallelize gzip
Patrick Donnelly [Tue, 21 Mar 2023 20:39:05 +0000 (16:39 -0400)]
qa/ceph: parallelize gzip

Our machines have lots of cores, use them!

Fixes: https://tracker.ceph.com/issues/59120
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 23a29d4abe54d987a99434ad0d733e0b44a213f9)

23 months agoos/bluestore: don't need separate variable to mark hits when lookup oid. 52943/head
locallocal [Mon, 6 Dec 2021 02:01:50 +0000 (10:01 +0800)]
os/bluestore: don't need separate variable to mark hits when lookup oid.

Signed-off-by: locallocal <locallocal@163.com>
(cherry picked from commit 1428544ec66b498830bc884b4824cd90106053d5)

23 months agoMerge pull request #51382 from RaminNietzsche/wip-ifed-fix-require-osd-release-to...
Igor Fedotov [Fri, 11 Aug 2023 07:42:51 +0000 (10:42 +0300)]
Merge pull request #51382 from RaminNietzsche/wip-ifed-fix-require-osd-release-to-pacific

pacific: mon: avoid exception when setting require-osd-release more than 2 versions up.

Reviewed-by: Igor Fedotov <igor.fedotov@croit.io>
23 months agomds: do not send split_realms for CEPH_SNAP_OP_UPDATE msg 52848/head
Xiubo Li [Wed, 17 May 2023 13:06:16 +0000 (21:06 +0800)]
mds: do not send split_realms for CEPH_SNAP_OP_UPDATE msg

The clients won't care about the split_realms and the kclient will
treat this as a corrupted snaptrace.

Fixes commit 93e7267757508520dfc22cff1ab20558bd4a44d4 ("mds: send snap
related messages centrally during mds recovery")
Fixes: https://tracker.ceph.com/issues/61217
Signed-off-by: Xiubo Li <xiubli@redhat.com>
(cherry picked from commit 3be9c9796246eab96f672218d9e45f118f6cdf12)

Conflicts:
 - Misses a dependent commit 7a4c509f7289ff4

23 months agoMerge pull request #52500 from lxbsz/wip-62040
Venky Shankar [Wed, 9 Aug 2023 12:05:58 +0000 (17:35 +0530)]
Merge pull request #52500 from lxbsz/wip-62040

pacific: client: do not send metrics until the MDS rank is ready

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agoMerge pull request #52654 from joscollin/wip-62177-pacific
Venky Shankar [Wed, 9 Aug 2023 12:05:32 +0000 (17:35 +0530)]
Merge pull request #52654 from joscollin/wip-62177-pacific

pacific: qa: fix cephfs-mirror unwinding and 'fs volume create/rm' order

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agoMerge pull request #52505 from lxbsz/wip-62012
Venky Shankar [Wed, 9 Aug 2023 04:32:01 +0000 (10:02 +0530)]
Merge pull request #52505 from lxbsz/wip-62012

pacific: client: wait rename to finish

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agoMerge pull request #52506 from lxbsz/wip-61983
Venky Shankar [Wed, 9 Aug 2023 04:31:32 +0000 (10:01 +0530)]
Merge pull request #52506 from lxbsz/wip-61983

pacific: client: force sending cap revoke ack always

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agoMerge pull request #52513 from joscollin/wip-62055-pacific
Venky Shankar [Wed, 9 Aug 2023 04:30:38 +0000 (10:00 +0530)]
Merge pull request #52513 from joscollin/wip-62055-pacific

pacific: mds: MDLog::_recovery_thread: handle the errors gracefully

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agoMerge pull request #52499 from lxbsz/wip-62043
Venky Shankar [Wed, 9 Aug 2023 04:29:58 +0000 (09:59 +0530)]
Merge pull request #52499 from lxbsz/wip-62043

pacific: client: trigger to flush the buffer when making snapshot

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agomgr/rbd_support: log number of images 51464/head
Ramana Raja [Wed, 14 Jun 2023 21:41:48 +0000 (17:41 -0400)]
mgr/rbd_support: log number of images

... that have one snapshot request pending when the
mirror_snapshot_schedule handler is shutting down.

Signed-off-by: Ramana Raja <rraja@redhat.com>
(cherry picked from commit edc3b0e80653c30d0fc318a24673e8a0568912ad)

Conflicts:
src/pybind/mgr/rbd_support/mirror_snapshot_schedule.py
 - Above conflict was due to commit e4a16e2
   ("mgr/rbd_support: add type annotation") not in pacific

23 months agomgr/rbd_support: add user-friendly stderr message
Ramana Raja [Wed, 14 Jun 2023 20:17:09 +0000 (16:17 -0400)]
mgr/rbd_support: add user-friendly stderr message

... when the rbd_support module is not ready.

Fixes: https://tracker.ceph.com/issues/61688
Signed-off-by: Ramana Raja <rraja@redhat.com>
(cherry picked from commit 6351ef5c8e691e359b1bf913dde4dbc8a441be1d)

Conflicts:
src/pybind/mgr/rbd_support/module.py
 - Above conflict was due to commit dcb51b0
   ("mgr/rbd_support: define commands using CLICommand") not in pacific

23 months agorbd_support: recover from "double blocklisting"
Ramana Raja [Wed, 10 May 2023 18:37:44 +0000 (14:37 -0400)]
rbd_support: recover from "double blocklisting"

Recover from being blocklisted while recovering from blocklisting.
When the rbd_support  module is being set up to recover from client
blocklisting, the module's new rados client connection can also get
blocklisted. Currently, this will cause the recovery to fail and
the module will remain inoperable. Instead, retry module recovery
when the new client gets blocklisted during the module setup in the
recovery thread.

Fixes: https://tracker.ceph.com/issues/59713
Signed-off-by: Ramana Raja <rraja@redhat.com>
(cherry picked from commit 4523d9b68ee84f69e8665a728d4037b53cdf3d6f)

Conflicts:
src/pybind/mgr/rbd_support/mirror_snapshot_schedule.py
src/pybind/mgr/rbd_support/module.py
src/pybind/mgr/rbd_support/perf.py
src/pybind/mgr/rbd_support/task.py
src/pybind/mgr/rbd_support/trash_purge_schedule.py
 - Above conflicts were due to commit e4a16e2
   ("mgr/rbd_support: add type annotation") not in pacific
 - Above conflicts were due to commit dcb51b0
   ("mgr/rbd_support: define commands using CLICommand") not in pacific

23 months agoqa/workunits/rbd: Add tests for rbd_support module recovery
Ramana Raja [Sun, 5 Feb 2023 03:36:16 +0000 (22:36 -0500)]
qa/workunits/rbd: Add tests for rbd_support module recovery

... after the module's RADOS client is blocklisted.

Signed-off-by: Ramana Raja <rraja@redhat.com>
(cherry picked from commit a2f15d4b2f876c79ee1de59fb79851b0eb505951)

23 months agomgr/rbd_support: recover from rados client blocklisting
Ramana Raja [Wed, 15 Feb 2023 15:12:54 +0000 (10:12 -0500)]
mgr/rbd_support: recover from rados client blocklisting

In certain scenarios the OSDs were slow to process RBD requests.
This lead to the rbd_support module's RBD client not being able to
gracefully handover a RBD exclusive lock to another RBD client.
After the condition persisted for some time, the other RBD client
forcefully acquired the lock by blocklisting the rbd_support module's
RBD client, and consequently blocklisted the module's RADOS client. The
rbd_support module stopped working. To recover the module, the entire
mgr service had to be restarted which reloaded other mgr modules.

Instead of recovering the rbd_support module from client blocklisting
by being disruptive to other mgr modules, recover the module
automatically without restarting the mgr serivce. On client getting
blocklisted, shutdown the module's handlers and blocklisted client,
create a new rados client for the module, and start the new handlers.

Fixes: https://tracker.ceph.com/issues/56724
Signed-off-by: Ramana Raja <rraja@redhat.com>
(cherry picked from commit cc0468738e5ddb98f7ac10b50e54446197b9c9a0)

Conflicts:
src/pybind/mgr/rbd_support/mirror_snapshot_schedule.py
src/pybind/mgr/rbd_support/module.py
src/pybind/mgr/rbd_support/perf.py
src/pybind/mgr/rbd_support/task.py
src/pybind/mgr/rbd_support/trash_purge_schedule.py
 - Above conflicts were due to commit e4a16e2
   ("mgr/rbd_support: add type annotation") not in pacific
 - Above conflicts were due to commit dcb51b0
   ("mgr/rbd_support: define commands using CLICommand") not in pacific

23 months agopybind/rados: add ConnectionShutdown exception class
Ramana Raja [Thu, 12 Jan 2023 02:53:16 +0000 (21:53 -0500)]
pybind/rados: add ConnectionShutdown exception class

Signed-off-by: Ramana Raja <rraja@redhat.com>
(cherry picked from commit e452899013323def87a8b9e6edbdae66067a827c)

23 months agomgr/rbd_support: notify the thread waiting on pending snapshot
Ramana Raja [Tue, 17 Jan 2023 03:04:08 +0000 (22:04 -0500)]
mgr/rbd_support: notify the thread waiting on pending snapshot

... requests to be completed.

Signed-off-by: Ramana Raja <rraja@redhat.com>
(cherry picked from commit 38a7e3715f0cee225aa49f3331d85ad37e2b7422)

23 months agomgr: take a lock within PyModuleRegistry's mutators and accessor 52883/head
Ramana Raja [Wed, 15 Feb 2023 18:41:00 +0000 (13:41 -0500)]
mgr: take a lock within PyModuleRegistry's mutators and accessor

... that modify and access the data member 'clients' respectively.

Signed-off-by: Ramana Raja <rraja@redhat.com>
(cherry picked from commit a586dcc57ab35a269f0c271756951d49f422662d)

23 months agoMerge pull request #52397 from mchangir/wip-61961-pacific
Yuri Weinstein [Tue, 8 Aug 2023 18:20:47 +0000 (11:20 -0700)]
Merge pull request #52397 from mchangir/wip-61961-pacific

pacific: mon: block osd pool mksnap for fs pools

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agoMerge pull request #52304 from lxbsz/wip-61798
Yuri Weinstein [Tue, 8 Aug 2023 18:20:19 +0000 (11:20 -0700)]
Merge pull request #52304 from lxbsz/wip-61798

pacific: client: only wait for write MDS OPs when unmounting

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agoMerge pull request #52244 from batrick/wip-61426-pacific
Yuri Weinstein [Tue, 8 Aug 2023 18:19:46 +0000 (11:19 -0700)]
Merge pull request #52244 from batrick/wip-61426-pacific

pacific: mon/MDSMonitor: ignore extraneous up:boot messages

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agoMerge pull request #52240 from batrick/wip-61414-pacific
Yuri Weinstein [Tue, 8 Aug 2023 18:19:10 +0000 (11:19 -0700)]
Merge pull request #52240 from batrick/wip-61414-pacific

pacific: mon/MDSMonitor: do not propose on error in prepare_update

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agoMerge pull request #52237 from batrick/wip-59372-pacific
Yuri Weinstein [Tue, 8 Aug 2023 18:18:36 +0000 (11:18 -0700)]
Merge pull request #52237 from batrick/wip-59372-pacific

pacific: qa: wait for MDSMonitor tick to replace daemons

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agoMerge pull request #52233 from batrick/wip-61411-pacific
Yuri Weinstein [Tue, 8 Aug 2023 18:18:01 +0000 (11:18 -0700)]
Merge pull request #52233 from batrick/wip-61411-pacific

pacific: mon/MDSMonitor: check fscid in pending exists in current

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agoMerge pull request #52230 from batrick/wip-61692-pacific
Yuri Weinstein [Tue, 8 Aug 2023 18:17:22 +0000 (11:17 -0700)]
Merge pull request #52230 from batrick/wip-61692-pacific

pacific:  mon/MDSMonitor: batch last_metadata update with pending

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agoMerge pull request #52125 from joscollin/wip-61734-pacific
Yuri Weinstein [Tue, 8 Aug 2023 18:16:53 +0000 (11:16 -0700)]
Merge pull request #52125 from joscollin/wip-61734-pacific

pacific: mds: display sane hex value (0x0) for empty feature bit

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agoMerge pull request #52075 from joscollin/wip-61696-pacific
Yuri Weinstein [Tue, 8 Aug 2023 18:16:13 +0000 (11:16 -0700)]
Merge pull request #52075 from joscollin/wip-61696-pacific

pacific: debian: install cephfs-mirror systemd unit files and man page

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agomgr: store names of modules that register RADOS clients in the MgrMap
Ramana Raja [Mon, 30 Jan 2023 07:21:54 +0000 (02:21 -0500)]
mgr: store names of modules that register RADOS clients in the MgrMap

The MgrMap stores a list of RADOS clients' addresses registered by the
mgr modules. During failover of ceph-mgr, the list is used to blocklist
clients belonging to the failed ceph-mgr.

Store the names of the mgr modules that registered the RADOS clients
along with the clients' addresses in the MgrMap. During debugging, this
allows easy identification of the mgr module that registered a
particular RADOS client by just dumping the MgrMap (`ceph mgr dump`).

Following is the MgrMap output with a module's client name displayed
along with its client addrvec,
$ ceph mgr dump | jq '.active_clients[0]'
{
  "name": "devicehealth",
  "addrvec": [
    {
      "type": "v2",
      "addr": "10.0.0.148:0",
      "nonce": 612376578
    }
  ]
}

Fixes: https://tracker.ceph.com/issues/58691
Signed-off-by: Ramana Raja <rraja@redhat.com>
(cherry picked from commit b545fb9f5660dca3af4dea195ea4555f09b3a6e8)

Conflicts:
PendingReleaseNotes [ moved to >=16.2.14 section ]

23 months agoMerge pull request #51508 from lxbsz/wip-59706
Yuri Weinstein [Tue, 8 Aug 2023 18:15:29 +0000 (11:15 -0700)]
Merge pull request #51508 from lxbsz/wip-59706

pacific: mds: do not take the ino which has been used

Reviewed-by: Venky Shankar <vshankar@redhat.com>
23 months agoceph-volume: make raw prepare use encryption_units.prepare_dmcrypt 52873/head
Igor Fedotov [Mon, 7 Aug 2023 09:04:10 +0000 (12:04 +0300)]
ceph-volume: make raw prepare use encryption_units.prepare_dmcrypt

Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
(cherry picked from commit 2c3477a69e2e01e999ff23ecf4a6508c87c340de)

23 months agotest/ceph_volume: add UTs for encrypted volumes migration
Igor Fedotov [Thu, 9 Mar 2023 15:06:09 +0000 (18:06 +0300)]
test/ceph_volume: add UTs for encrypted volumes migration

Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
(cherry picked from commit f69316f627014b720f6b89dcb96c29cd7480cf88)

23 months agoceph-volume: close encrypted device using name not path when zapping
Igor Fedotov [Thu, 9 Mar 2023 13:30:56 +0000 (16:30 +0300)]
ceph-volume: close encrypted device using name not path when zapping

Just a tiny cleanup.

Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
(cherry picked from commit ebc335def0b32d1ecfe93fcfa286ddf460f136a1)

23 months agoceph-volume: close encrypted volumes on deactivate
Igor Fedotov [Thu, 9 Mar 2023 13:29:55 +0000 (16:29 +0300)]
ceph-volume: close encrypted volumes on deactivate

Fixes: https://tracker.ceph.com/issues/58943
Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
(cherry picked from commit d8f163d1f55d8234824e57fc6f851db9292fa972)

23 months agotest/ceph-volume: add UT for adding encrypted DB/WAL lvm.
Igor Fedotov [Tue, 7 Mar 2023 17:52:25 +0000 (20:52 +0300)]
test/ceph-volume: add UT for adding encrypted DB/WAL lvm.

Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
(cherry picked from commit 9930225391eccd27d028592a90e677c86f01b59c)

23 months agoceph-volume: support creating/migrating encrypted lvm volumes
Igor Fedotov [Tue, 7 Mar 2023 16:53:57 +0000 (19:53 +0300)]
ceph-volume: support creating/migrating encrypted lvm volumes

Fixes: https://tracker.ceph.com/issues/55167
Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
(cherry picked from commit b45d9b79aa079f3cfe227c74c1df3a3bfad4c7c9)

23 months agoMerge pull request #51249 from k0ste/wip-52791-pacific
Yuri Weinstein [Mon, 7 Aug 2023 20:24:15 +0000 (13:24 -0700)]
Merge pull request #51249 from k0ste/wip-52791-pacific

pacific: common/TrackedOp: fix osd reboot optracker coredump

Reviewed-by: Laura Flores <lflores@redhat.com>
23 months agoos/bluestore: introduce a cooldown period for failed BlueFS allocations. 52212/head
Igor Fedotov [Fri, 11 Nov 2022 14:31:19 +0000 (17:31 +0300)]
os/bluestore: introduce a cooldown period for failed BlueFS allocations.

When using bluefs_shared_alloc_size one might get a long-lasting state when
that large chunks are not available any more and fallback to shared
device min alloc size occurs. The introduced cooldown is intended to
prevent repetitive allocation attempts with bluefs_shared_alloc_size for
a while. The rationale is to eliminate performance penalty these failing
attempts might cause.

Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
(cherry picked from commit e52bcc852ce51ab99138420f9069e2f59e1cb706)

 Conflicts:
src/common/options/global.yaml.in
 (legacy options declarations, no yamls in pacific)

23 months agoMerge pull request #52704 from rhcs-dashboard/wip-62237-pacific
Nizamudeen A [Mon, 7 Aug 2023 04:38:18 +0000 (10:08 +0530)]
Merge pull request #52704 from rhcs-dashboard/wip-62237-pacific

pacific: mgr/dashboard: allow PUT in CORS

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
23 months agomds: skip forwarding request if the session were removed 52844/head
Xiubo Li [Mon, 10 Jul 2023 03:48:55 +0000 (11:48 +0800)]
mds: skip forwarding request if the session were removed

When forwarding the requests, the corresponding session could be
already closed.

https://tracker.ceph.com/issues/60625
Signed-off-by: Xiubo Li <xiubli@redhat.com>
(cherry picked from commit d0bfbbea44e22fc545363cd6af47d28e18e353b0)

23 months agoMerge pull request #52790 from adamemerson/wip-62097-pacific
Ilya Dryomov [Thu, 3 Aug 2023 19:47:45 +0000 (21:47 +0200)]
Merge pull request #52790 from adamemerson/wip-62097-pacific

pacific: build: Remove ceph-libboost* packages in install-deps

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
23 months agomgr: fix some flake8 complaints 52790/head
Nizamudeen A [Mon, 31 Jul 2023 09:20:57 +0000 (14:50 +0530)]
mgr: fix some flake8 complaints

Signed-off-by: Nizamudeen A <nia@redhat.com>
(cherry picked from commit d199782fb5f3c22f1cd5fda6ddf1d64f40a92726)

Conflicts:
src/pybind/mgr/crash/module.py imports were not present

23 months agobuild: install-deps.sh installs system boost on Jammy 52768/head
Adam Emerson [Thu, 20 Jul 2023 01:03:44 +0000 (21:03 -0400)]
build: install-deps.sh installs system boost on Jammy

Since on Jammy system boost is new enough for Pacific and we don't have
Jammy packages for older boost (we only have those for Bionic), just
install the system packages rather than fetching ceph-libboost.

No analogous commit exists in main as while main's Jammy case installs
ceph-libboost, we just need a system package here.

Fixes: https://tracker.ceph.com/issues/62103
Signed-off-by: Adam Emerson <aemerson@redhat.com>
23 months agobuild: Remove old ceph-libboost* packages in install-deps
Adam Emerson [Wed, 19 Jul 2023 21:12:08 +0000 (17:12 -0400)]
build: Remove old ceph-libboost* packages in install-deps

Here, we extract `clean_boost_on_ubuntu()` and call it before other
installs on Debian distributions so that if we install a system boost,
a potentially newer `ceph-libboost` won't get in the way.

As the sources.list.d being removed in the original cleanup code isn't
the one we're currently installing in the install code, add a removal
for the currently used source, then do apt-update so packages from the
removed source are no longer included as available.

Two subsidiary dev packages from conflicting boost libraries can be
installed, but it leaves apt in an inconsistent state. To clean this
up, add `--fix-missing` to the removal line and call
`clean_boost_on_ubuntu()` before other uses of apt.

Fixes: https://tracker.ceph.com/issues/62097
Signed-off-by: Adam Emerson <aemerson@redhat.com>
(cherry picked from commit 0c3f511e14af639b6509e69b889258b2f718f8fd)

Conflicts:
install-deps.sh
 - Different boost version for Pacific than Squid.
 - ci_debug does not exist in Pacific
 - whitespace
 - No INSTALL_EXTRA

Fixes: https://tracker.ceph.com/issues/62103
Signed-off-by: Adam Emerson <aemerson@redhat.com>
23 months agotest/store_test: adjust spillover cases to reflect updated WAL usage. 51773/head
Igor Fedotov [Wed, 2 Aug 2023 13:49:51 +0000 (16:49 +0300)]
test/store_test: adjust spillover cases to reflect updated WAL usage.

Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
23 months agoMerge pull request #52159 from cbodley/wip-57643-pacific
Yuri Weinstein [Tue, 1 Aug 2023 15:16:08 +0000 (11:16 -0400)]
Merge pull request #52159 from cbodley/wip-57643-pacific

pacific: rgw: avoid string_view to temporary in RGWBulkUploadOp

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
23 months agoMerge pull request #49943 from NitzanMordhai/wip-58611-pacific
Yuri Weinstein [Tue, 1 Aug 2023 15:13:21 +0000 (11:13 -0400)]
Merge pull request #49943 from NitzanMordhai/wip-58611-pacific

pacific: Wip nitzan fixing few rados/test.sh

Reviewed-by: Laura Flores <lflores@redhat.com>
23 months agoMerge pull request #49521 from NitzanMordhai/wip-58314-pacific
Yuri Weinstein [Tue, 1 Aug 2023 15:12:40 +0000 (11:12 -0400)]
Merge pull request #49521 from NitzanMordhai/wip-58314-pacific

pacific: src/valgrind.supp: Adding know leaks unrelated to ceph

Reviewed-by: Laura Flores <lflores@redhat.com>
23 months agoos/bluestore: proper override rocksdb::WritableFile::Allocate
Igor Fedotov [Wed, 1 Mar 2023 13:04:23 +0000 (16:04 +0300)]
os/bluestore: proper override rocksdb::WritableFile::Allocate

Failing to do that makes BlueFS file frgmentation higher.

Fixes: https://tracker.ceph.com/issues/58966
Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
(cherry picked from commit 2d8b9e9ed58bca4917b90ea5eaa43264a89dff75)

23 months agomds: Fix the linkmerge assert check 52726/head
Kotresh HR [Tue, 6 Jun 2023 07:39:00 +0000 (13:09 +0530)]
mds: Fix the linkmerge assert check

Let's say there is a hardlink created as below.

touch file1
ln file1 hl_file1

In this case 'file1' holds the primary inode and 'hl_file' holds
the remote inode (holds primary inode number and other required info).
Now, if the 'file1' is deleted first, it's moved to a stray directory
and can't be deleted because the hardlink 'hl_file1' still exists
which requires primary inode. So on straydn eval, this primary
inode is linked to 'hl_file1 and remote inode is removed. This is called
the linkmerge/stray reintegration. So in the linkmerge case, the srcdnl
is primary straydn and the destdnl is the remote.

Signed-off-by: Kotresh HR <khiremat@redhat.com>
Fixes: https://tracker.ceph.com/issues/61879
(cherry picked from commit 85279ac657832fd643ee2cc5f1f6a27f98e099f6)

23 months agomgr/dashboard: allow PUT in CORS 52704/head
Nizamudeen A [Tue, 25 Jul 2023 09:21:40 +0000 (14:51 +0530)]
mgr/dashboard: allow PUT in CORS

Fixes: https://tracker.ceph.com/issues/62222
Signed-off-by: Nizamudeen A <nia@redhat.com>
(cherry picked from commit 8da2a2c0e296a94a2bfab6ab68480d2e33e7d84e)

2 years agomds: update mdlog perf counters during replay 52682/head
Patrick Donnelly [Fri, 30 Jun 2023 16:44:15 +0000 (12:44 -0400)]
mds: update mdlog perf counters during replay

Fixes: https://tracker.ceph.com/issues/61864
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 48e3b51151fe94217bb4064b8fc9701e3536730c)

2 years agoqa: fix cephfs-mirror unwinding and 'fs volume create/rm' order 52654/head
Jos Collin [Mon, 24 Jul 2023 08:46:52 +0000 (14:16 +0530)]
qa: fix cephfs-mirror unwinding and 'fs volume create/rm' order

* Fixes the 'fs volume create' happens before the cephfs-mirror daemon start.
* Fixes the 'fs volume rm' happen only after the cephfs-mirror daemon unwinding.
  - This prevents the issue of mirror-daemon not returning from a libcephfs call, as
    the volumes were deleted during the cephfs_mirror_thrash ing.

Fixes: https://tracker.ceph.com/issues/61182
Signed-off-by: Jos Collin <jcollin@redhat.com>
(cherry picked from commit b9a1a3cdf9770bcb27d6e08ddbc059f01674f4b8)

2 years agomds: MDLog::_recovery_thread: handle the errors gracefully 52513/head
Jos Collin [Fri, 23 Jun 2023 06:16:26 +0000 (11:46 +0530)]
mds: MDLog::_recovery_thread: handle the errors gracefully

A write fails if the MDS is already blocklisted due to the 'fs fail' issued by the qa tests.
Handle those write failures gracefully, even when the MDS is stopping.

Fixes: https://tracker.ceph.com/issues/61201
Signed-off-by: Jos Collin <jcollin@redhat.com>
(cherry picked from commit d562905dcfb5b8a45ce7042c543720ef8b0fa05b)

2 years agoMerge pull request #50814 from dparmar18/wip-59261-pacific
Venky Shankar [Wed, 26 Jul 2023 08:07:32 +0000 (13:37 +0530)]
Merge pull request #50814 from dparmar18/wip-59261-pacific

pacific: mds: fix stray evaluation using scrub and introduce new option

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2 years agoMerge pull request #51686 from lxbsz/wip-61346
Venky Shankar [Wed, 26 Jul 2023 06:25:26 +0000 (11:55 +0530)]
Merge pull request #51686 from lxbsz/wip-61346

pacific: mds: wait reintegrate to finish when unlinking

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2 years agoMerge pull request #51699 from dparmar18/wip-61202-pacific
Yuri Weinstein [Tue, 25 Jul 2023 15:20:07 +0000 (11:20 -0400)]
Merge pull request #51699 from dparmar18/wip-61202-pacific

pacific: MDS imported_inodes metric is not updated.

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2 years agoMerge pull request #51687 from vshankar/tr-59725
Yuri Weinstein [Tue, 25 Jul 2023 15:19:34 +0000 (11:19 -0400)]
Merge pull request #51687 from vshankar/tr-59725

pacific: mds: allow unlink from lost+found directory

Reviewed-by: Xiubo Li <xiubli@redhat.com>
2 years agoMerge pull request #51610 from vshankar/tr-59721
Yuri Weinstein [Tue, 25 Jul 2023 15:17:49 +0000 (11:17 -0400)]
Merge pull request #51610 from vshankar/tr-59721

pacific: qa: run scrub post file system recovery

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2 years agoMerge pull request #51609 from vshankar/tr-61235
Yuri Weinstein [Tue, 25 Jul 2023 15:17:01 +0000 (11:17 -0400)]
Merge pull request #51609 from vshankar/tr-61235

pacific: mds: rdlock_path_xlock_dentry supports returning auth target inode

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2 years agoMerge pull request #51353 from joscollin/wip-59482-pacific
Yuri Weinstein [Tue, 25 Jul 2023 15:16:17 +0000 (11:16 -0400)]
Merge pull request #51353 from joscollin/wip-59482-pacific

pacific: cephfs-top: check the minimum compatible python version

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2 years agoMerge pull request #51247 from k0ste/wip-52442-pacific
Yuri Weinstein [Tue, 25 Jul 2023 15:15:50 +0000 (11:15 -0400)]
Merge pull request #51247 from k0ste/wip-52442-pacific

pacific: client: do not dump mds twice in Inode::dump()

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2 years agoMerge pull request #51246 from mchangir/wip-59017-pacific
Yuri Weinstein [Tue, 25 Jul 2023 15:15:21 +0000 (11:15 -0400)]
Merge pull request #51246 from mchangir/wip-59017-pacific

pacific: mgr/snap_schedule: add debug log for paths failing snapshot creation

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2 years agoMerge pull request #50737 from joscollin/wip-58984-pacific
Yuri Weinstein [Tue, 25 Jul 2023 15:12:43 +0000 (11:12 -0400)]
Merge pull request #50737 from joscollin/wip-58984-pacific

pacific: cephfs-top: navigate to home screen when no fs

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2 years agorbd-mirror: fix race preventing local image deletion 52625/head
N Balachandran [Fri, 14 Jul 2023 12:56:15 +0000 (18:26 +0530)]
rbd-mirror: fix race preventing local image deletion

On primary image deletion, a race between InstanceReplayer::release_image()
(which calls ImageReplayer::stop())and ImageReplayer::handle_bootstrap()
may prevent the non-primary image from being deleted. Because
ImageReplayer::handle_bootstrap() checks if the start has been canceled
before processing -ENOLINK, m_delete_requested is not set to true and the
local image is not deleted.
This commit sets m_delete_requested to true before checking if the
start has been canceled to ensure that the image is deleted during shut_down,
and updates ImageReplayer::bootstrap() to cancel the BootstrapRequest
and prevent a potentially long time spent in an image sync if ImageReplayer
stop is requested.

Fixes: https://tracker.ceph.com/issues/61672
Signed-off-by: N Balachandran <nibalach@redhat.com>
(cherry picked from commit 1df7921b916579c273cb597e234c9c6b721674d7)

2 years agoMerge pull request #52323 from batrick/wip-61900-pacific
Yuri Weinstein [Mon, 24 Jul 2023 15:03:13 +0000 (11:03 -0400)]
Merge pull request #52323 from batrick/wip-61900-pacific

pacific: pybind: drop GIL during library callouts

Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
2 years agoMerge pull request #52287 from idryomov/wip-59641-pacific
Yuri Weinstein [Mon, 24 Jul 2023 15:02:09 +0000 (11:02 -0400)]
Merge pull request #52287 from idryomov/wip-59641-pacific

pacific: librbd/managed_lock/GetLockerRequest: Fix no valid lockers case

Reviewed-by: Christopher Hoffman <choffman@redhat.com>
2 years agoMerge pull request #52285 from idryomov/wip-61616-pacific
Yuri Weinstein [Mon, 24 Jul 2023 15:01:27 +0000 (11:01 -0400)]
Merge pull request #52285 from idryomov/wip-61616-pacific

pacific: librbd: avoid object map corruption in snapshots taken under I/O

Reviewed-by: Mykola Golub <mgolub@suse.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
2 years agoMerge pull request #52063 from guits/wip-61154-pacific
Guillaume Abrioux [Wed, 19 Jul 2023 08:03:11 +0000 (10:03 +0200)]
Merge pull request #52063 from guits/wip-61154-pacific

pacific: ceph-volume: fix a bug in `get_lvm_fast_allocs()` (batch)

2 years agoMerge pull request #52080 from guits/wip-61698-pacific
Guillaume Abrioux [Wed, 19 Jul 2023 08:01:21 +0000 (10:01 +0200)]
Merge pull request #52080 from guits/wip-61698-pacific

pacific: ceph-volume: set lvm membership for mpath type devices

2 years agodoc: users now need to provide scrub_mdsdir and recursive flags 50814/head
Dhairya Parmar [Mon, 22 May 2023 12:00:27 +0000 (17:30 +0530)]
doc: users now need to provide scrub_mdsdir and recursive flags
for mdsdir scrub at CephFS root.

Fixes: https://tracker.ceph.com/issues/59350
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
(cherry picked from commit 93dfc111bf7e11b3122d2a2df0346b341164dd08)

2 years agoqa: add recursive flag to test_flag_scrub_mdsdir
Dhairya Parmar [Mon, 22 May 2023 11:55:38 +0000 (17:25 +0530)]
qa: add recursive flag to test_flag_scrub_mdsdir

Code has been changed, in order to scrub ~mdsdir at root,
recursive flag also needs to be provided along with
scrub_mdsdir.

Fixes: https://tracker.ceph.com/issues/59350
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
(cherry picked from commit e40ca408a1343754b80ba1e88e0b669689ada164)

2 years agomds: remove code to bypass dumping empty header scrub info
Dhairya Parmar [Mon, 22 May 2023 10:37:34 +0000 (16:07 +0530)]
mds: remove code to bypass dumping empty header scrub info

Previously when ~mdsdir was scrubbed at CephFS root, it's header
was kept empty, thus it became necessary to not dump it's values
for 'scrub status'. Now since both the scrubs(~mdsdir and root)
run under the same header, this code is no more needed.

Fixes: https://tracker.ceph.com/issues/59350
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
(cherry picked from commit 548af10f1057fe3fb46e23887b012a664b45b7f8)

2 years agomds: dump_values no more needed
Dhairya Parmar [Mon, 22 May 2023 10:36:24 +0000 (16:06 +0530)]
mds: dump_values no more needed

Previouly, two individual scrubs were initiated to scrub ~mdsdir
at root where the ~mdsdir scrub wasn't provided any tag thus, it
was necessary to not dump it's values for output of 'scrub start'.
Now since mdsdir and root scrub run under single header, there is
no need for this anymore, thus removing this redundant code.

Fixes: https://tracker.ceph.com/issues/59350
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
(cherry picked from commit 2f06feea33c88798e4e9d654bbff8b05e77f0681)

2 years agomds: enqueue ~mdsdir at the time of enqueing root
Dhairya Parmar [Mon, 22 May 2023 07:04:51 +0000 (12:34 +0530)]
mds: enqueue ~mdsdir at the time of enqueing root

This would avoid the need to run individual scrubs for
~mdsdir and root, i.e. run both the scrubs under the
same header, this also helps to avoid edge case where
in case ~mdsdir is huge and it's taking time to scrub it,
the scrub status would report something like this until
root inodes kick in:

{
    "status": "scrub active (757 inodes in the stack)",
    "scrubs": {}
}

Fixes: https://tracker.ceph.com/issues/59350
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
(cherry picked from commit f85b22818b474911cfdc15e7c6be1d2979939888)

2 years agoclient: force sending cap revoke ack always 52506/head
Xiubo Li [Wed, 28 Jun 2023 13:59:53 +0000 (21:59 +0800)]
client: force sending cap revoke ack always

If just before the revoke request, which will increase the 'seq', is
sent out the clients released the corresponding caps and sent out
the cap update request with old 'seq', the mds will miss checking
the seqs and calculating the caps.

We should always send an ack for revoke requests.

Fixes: https://tracker.ceph.com/issues/61782
Signed-off-by: Xiubo Li <xiubli@redhat.com>
(cherry picked from commit 09a2e33c4aca6e72d75e2527ab5f467576d55dc8)