]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
3 years agoRevert "mds: kill session state are open when mds do ms_handle_remote_reset" revert-44638-wip-53911 45424/head
Venky Shankar [Wed, 16 Mar 2022 15:14:29 +0000 (20:44 +0530)]
Revert "mds: kill session state are open when mds do ms_handle_remote_reset"

3 years agoMerge pull request #45218 from rhcs-dashboard/feature-clusterLogs-searchHighlight
Ernesto Puerta [Wed, 16 Mar 2022 13:14:43 +0000 (14:14 +0100)]
Merge pull request #45218 from rhcs-dashboard/feature-clusterLogs-searchHighlight

mgr/dashboard: highlight the search text in cluster logs

Reviewed-by: Sarthak0702 <NOT@FOUND>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Laura Flores <lflores@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
Reviewed-by: sunilangadi2 <NOT@FOUND>
3 years agoMerge pull request #44843 from rhcs-dashboard/fix-Nan-undefined-host-columns
Ernesto Puerta [Wed, 16 Mar 2022 13:12:47 +0000 (14:12 +0100)]
Merge pull request #44843 from rhcs-dashboard/fix-Nan-undefined-host-columns

mgr/dashboard: fix columns in host table  with NaN Undefined

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
3 years agoMerge pull request #44751 from rhcs-dashboard/introduce-logging-containers
Ernesto Puerta [Wed, 16 Mar 2022 13:06:55 +0000 (14:06 +0100)]
Merge pull request #44751 from rhcs-dashboard/introduce-logging-containers

mgr/cephadm: introduce centralized logging in Dashboard using Loki and Promtail

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: rkachach <NOT@FOUND>
Reviewed-by: sunilangadi2 <NOT@FOUND>
Reviewed-by: umangachapagain <NOT@FOUND>
3 years agoMerge pull request #45104 from rhcs-dashboard/cephfs-ernno-mapping 45095/head
Venky Shankar [Wed, 16 Mar 2022 10:15:14 +0000 (15:45 +0530)]
Merge pull request #45104 from rhcs-dashboard/cephfs-ernno-mapping

Add mapping for ernno:13 and adding path in error msg in opendir()/cephfs.pyx

Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agoMerge pull request #45290 from nmshelke/fix-54375
Venky Shankar [Wed, 16 Mar 2022 03:53:25 +0000 (09:23 +0530)]
Merge pull request #45290 from nmshelke/fix-54375

mgr/volumes: the 'mode' should honor idempotent subvolume creation

Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agoMerge pull request #45380 from ceph/wip-yuri-master-crontab
Josh Durgin [Tue, 15 Mar 2022 21:22:54 +0000 (14:22 -0700)]
Merge pull request #45380 from ceph/wip-yuri-master-crontab

qa/tests: added client upgrade suites to the crontab

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
3 years agoMerge pull request #45348 from liu-chunmei/seastore-op-version
Liu-Chunmei [Tue, 15 Mar 2022 19:48:55 +0000 (12:48 -0700)]
Merge pull request #45348 from liu-chunmei/seastore-op-version

crimson: add CEPH_OSD_OP_ASSERT_VER

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
3 years agoMerge pull request #44912 from xxhdx1985126/wip-fixed-kv-btree
Samuel Just [Tue, 15 Mar 2022 19:45:07 +0000 (12:45 -0700)]
Merge pull request #44912 from xxhdx1985126/wip-fixed-kv-btree

crimson/os/seastore: extract fixed kv btree implementation out of lba manager

Reviewed-by: Samuel Just <sjust@redhat.com>
3 years agoMerge pull request #45362 from josephsawaya/doc-dev
Adam King [Tue, 15 Mar 2022 18:43:16 +0000 (14:43 -0400)]
Merge pull request #45362 from josephsawaya/doc-dev

doc: Add note to osds_per_device description about dual-actuator devices

Reviewed-by: Adam King <adking@redhat.com>
3 years agoMerge pull request #45337 from amathuria/amathuri-add-scrub-duration
Yuri Weinstein [Tue, 15 Mar 2022 17:35:42 +0000 (10:35 -0700)]
Merge pull request #45337 from amathuria/amathuri-add-scrub-duration

osd/scrub: add scrub duration to pg stats

Reviewed-by: Sridhar Seshasayee <sseshasa@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
3 years agoMerge pull request #45078 from kamoltat/wip-ksirivad-fix-target-size-ratio-bound
Yuri Weinstein [Tue, 15 Mar 2022 16:22:58 +0000 (09:22 -0700)]
Merge pull request #45078 from kamoltat/wip-ksirivad-fix-target-size-ratio-bound

mon/MonCommands.h: fix target_size_ratio range

Reviewed-by: Neha Ojha <nojha@redhat.com>
3 years agoMerge pull request #45317 from Matan-B/wip-matanb-c-vstart-as
Samuel Just [Tue, 15 Mar 2022 03:20:05 +0000 (20:20 -0700)]
Merge pull request #45317 from Matan-B/wip-matanb-c-vstart-as

vstart.sh: disable pg-autoscaling for crimson-osd

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
3 years agocrimson: add CEPH_OSD_OP_ASSERT_VER 45348/head
chunmei-liu [Fri, 11 Mar 2022 07:36:43 +0000 (23:36 -0800)]
crimson: add CEPH_OSD_OP_ASSERT_VER

Signed-off-by: chunmei-liu <chunmei.liu@intel.com>
3 years agoMerge pull request #45378 from tchaikov/wip-docs
Kefu Chai [Tue, 15 Mar 2022 01:37:47 +0000 (09:37 +0800)]
Merge pull request #45378 from tchaikov/wip-docs

doc/dev: s/tchaikov/ceph/

Reviewed-by:Anthony D'Atri <anthony.datri@gmail.com>

3 years agoMerge pull request #45343 from dang/wip-dang-bucket-quota
Daniel Gryniewicz [Mon, 14 Mar 2022 17:36:02 +0000 (13:36 -0400)]
Merge pull request #45343 from dang/wip-dang-bucket-quota

RGW - Get quota on OPs with a bucket

Reviewed-by Casey Bodley <cbodley@redhat.com>

3 years agoqa/tests: added client upgrade suites to the crontab 45380/head
Yuri Weinstein [Mon, 14 Mar 2022 15:28:37 +0000 (08:28 -0700)]
qa/tests: added client upgrade suites to the crontab

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
3 years agodoc/dev: s/tchaikov/ceph/ 45378/head
Kefu Chai [Mon, 14 Mar 2022 15:05:16 +0000 (23:05 +0800)]
doc/dev: s/tchaikov/ceph/

use the repo under ceph orgnization for the sake of better
consistency

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agoMerge pull request #45235 from tchaikov/rbd-std-variant
Ilya Dryomov [Mon, 14 Mar 2022 10:36:39 +0000 (11:36 +0100)]
Merge pull request #45235 from tchaikov/rbd-std-variant

librbd: s/boost::variant/std::variant/

Reviewed-by: Mykola Golub <mgolub@suse.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
3 years agoMerge pull request #44827 from ceph/wip-yuriw-crontab-master2
Yuri Weinstein [Sun, 13 Mar 2022 16:10:27 +0000 (09:10 -0700)]
Merge pull request #44827 from ceph/wip-yuriw-crontab-master2

qa/tests: added quincy and removed master runs

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Adam King adking@redhat.com
3 years agoMerge pull request #45276 from tchaikov/wip-rapidjson
Kefu Chai [Sun, 13 Mar 2022 12:38:35 +0000 (20:38 +0800)]
Merge pull request #45276 from tchaikov/wip-rapidjson

submodule: bump up RapidJSON

Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 years agocrimson/os/seastore/btree: move 'with_btree*' from lba manager to fixed kv btree 44912/head
Xuehan Xu [Wed, 16 Feb 2022 09:46:58 +0000 (17:46 +0800)]
crimson/os/seastore/btree: move 'with_btree*' from lba manager to fixed kv btree

Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
3 years agocrimson/os/seastore: extract lba nodes out of lba manager
Xuehan Xu [Tue, 8 Feb 2022 05:34:02 +0000 (13:34 +0800)]
crimson/os/seastore: extract lba nodes out of lba manager

Change lba nodes to general fixed-size-kv btree nodes

Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
3 years agocrimson/os/seastore: extract fixed kv btree implementation out of lba manager
Xuehan Xu [Fri, 28 Jan 2022 05:04:03 +0000 (13:04 +0800)]
crimson/os/seastore: extract fixed kv btree implementation out of lba manager

Basically, this pr moves the current LBABtree and lba_range_pin out of lba manager,
and rename LBABtree to FixedKVBtree. This is the preparation for implementing backrefs

Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
3 years agovstart.sh: disable autoscaling for crimson-osd 45317/head
Matan Breizman [Wed, 9 Mar 2022 15:29:32 +0000 (15:29 +0000)]
vstart.sh: disable autoscaling for crimson-osd

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
3 years agodoc: Add note to osds_per_device description about dual-actuator devices 45362/head
Joseph Sawaya [Fri, 11 Mar 2022 20:45:16 +0000 (15:45 -0500)]
doc: Add note to osds_per_device description about dual-actuator devices

This commit adds information about using dual-actuator devices with the
osds_per_device drive group option, letting users know they can create
an OSD for each actuator by setting this value to 2 in the drive group
they're using to apply OSDs to the device.

Signed-off-by: Joseph Sawaya <jsawaya@redhat.com>
3 years agolibrbd: s/boost::variant/std::variant/ 45235/head
Kefu Chai [Wed, 2 Mar 2022 16:41:19 +0000 (00:41 +0800)]
librbd: s/boost::variant/std::variant/

boost::variant explicitly prevent it from being compared other types
by marking the return type of, for instance operator==(const T&) as
"void", if T is not identical to the variant type. so address this,
let's use std::variant<> instead.

more standard compliant and simpler this way.

because of https://cplusplus.github.io/LWG/issue3052, libstdc++
only specializes for std::variant<> for std::visit(), while libc++
allows the derived types of std::variant<> to be "visited", hence
we add an adaptor for SnapshotNamespace.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agoosd/scrub: add scrub duration to pg stats 45337/head
Aishwarya Mathuria [Thu, 10 Mar 2022 10:25:37 +0000 (15:55 +0530)]
osd/scrub: add scrub duration to pg stats

Addition of a SCRUB_DURATION field that shows how long the scrub/deep-scrub of a pg took.
This field will be displayed in the output of the "ceph pg dump --format=json" and "ceph pg ls-by-pool --format=json" commands.

Signed-off-by: Aishwarya Mathuria <amathuri@redhat.com>
3 years agoMerge pull request #45034 from ceph/cephadm-conditional-hostname
Zack Cerza [Fri, 11 Mar 2022 02:07:17 +0000 (19:07 -0700)]
Merge pull request #45034 from ceph/cephadm-conditional-hostname

qa/tasks/cephadm: Make hostname change idempotent

3 years agoMerge pull request #44925 from JoshSalomon/balancer-perf
Yuri Weinstein [Thu, 10 Mar 2022 23:24:47 +0000 (15:24 -0800)]
Merge pull request #44925 from JoshSalomon/balancer-perf

balancer: Improve performance in rare cases

Reviewed-by: Laura Flores <lflores@redhat.com>
3 years agoRGW - Get quota on OPs with a bucket 45343/head
Daniel Gryniewicz [Thu, 10 Mar 2022 20:01:38 +0000 (15:01 -0500)]
RGW - Get quota on OPs with a bucket

Bucket head OPs should have quota in the output.  However, we were only
fetching quota on OPs that also had an object.  The object itself is not
necessary for quota (although a bucket is).  Change it so that we get
quota on bucket OPs as well.

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

Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
3 years agoMerge pull request #45200 from kamoltat/wip-ksirivad-pg-num-max-reorder
Kamoltat Sirivadhna [Thu, 10 Mar 2022 17:01:27 +0000 (12:01 -0500)]
Merge pull request #45200 from kamoltat/wip-ksirivad-pg-num-max-reorder

osd/osd_types: pg_num_max reordering
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
3 years agoMerge pull request #45330 from wxypro/fix-typos
Anthony D'Atri [Thu, 10 Mar 2022 08:55:19 +0000 (00:55 -0800)]
Merge pull request #45330 from wxypro/fix-typos

doc/cephfs: fix typos

3 years agodoc/cephfs: fix typos 45330/head
wangxinyu [Thu, 10 Mar 2022 06:31:26 +0000 (14:31 +0800)]
doc/cephfs: fix typos

fix typos

Signed-off-by: wangxinyu <wangxinyu@inspur.com>
3 years agomgr/cephadm: fix cephadm errors 44751/head
Aashish Sharma [Wed, 2 Mar 2022 11:23:02 +0000 (16:53 +0530)]
mgr/cephadm: fix cephadm errors

Signed-off-by: Aashish Sharma <aasharma@redhat.com>
3 years agoMerge pull request #43474 from xxhdx1985126/wip-epm-strategy
Samuel Just [Thu, 10 Mar 2022 02:34:00 +0000 (18:34 -0800)]
Merge pull request #43474 from xxhdx1985126/wip-epm-strategy

crimson/os/seastore: implement Sprite LFS' gc and extent placement strategy to lower gc cost

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
3 years agoMerge pull request #45244 from Matan-B/wip-matanb-revert-keyring
Neha Ojha [Wed, 9 Mar 2022 23:54:21 +0000 (15:54 -0800)]
Merge pull request #45244 from Matan-B/wip-matanb-revert-keyring

Revert "doc/dev: Running workunits locally"

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
3 years agoMerge pull request #45305 from Thingee/update-foundation-mem-202203
Neha Ojha [Wed, 9 Mar 2022 23:19:35 +0000 (15:19 -0800)]
Merge pull request #45305 from Thingee/update-foundation-mem-202203

docs: Updating Foundation member list for 202203

Reviewed-by: Dan van der Ster <daniel.vanderster@cern.ch>
Reviewed-by:Anthony D'Atri <anthony.datri@gmail.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
3 years agoMerge pull request #44913 from benhanokh/safe_shutdown_v2
Yuri Weinstein [Wed, 9 Mar 2022 21:53:43 +0000 (13:53 -0800)]
Merge pull request #44913 from benhanokh/safe_shutdown_v2

OSD::Modify OSD Fast-Shutdown to work safely i.e. quiesce all activit…

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
3 years agoMerge pull request #45318 from kamoltat/wip-fix-autoscale-doc
Kamoltat Sirivadhna [Wed, 9 Mar 2022 17:41:01 +0000 (12:41 -0500)]
Merge pull request #45318 from kamoltat/wip-fix-autoscale-doc

doc/rados/operations/placement-groups:  ...fix typo...
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
3 years agoMerge pull request #45272 from petrutlucian94/build_fix
David Galloway [Wed, 9 Mar 2022 15:42:36 +0000 (10:42 -0500)]
Merge pull request #45272 from petrutlucian94/build_fix

Fix Windows build

3 years agodoc/rados/operations/placement-groups: typo two 'the' 45318/head
Kamoltat [Wed, 9 Mar 2022 15:36:20 +0000 (15:36 +0000)]
doc/rados/operations/placement-groups: typo two 'the'

typo, should not have two 'the' next to each
other.

Signed-off-by: Kamoltat <ksirivad@redhat.com>
3 years agoMerge pull request #45279 from kamoltat/wip-ksirivad-fix-bulk-doc
Kamoltat Sirivadhna [Wed, 9 Mar 2022 15:13:21 +0000 (10:13 -0500)]
Merge pull request #45279 from kamoltat/wip-ksirivad-fix-bulk-doc

doc/rados/operations/placement-groups: fix --bulk commands
Reviewed-by: Neha Ojha <nojha@redhat.com>
3 years agocls/rbd: define SnapshotNamespace's ctor using its parent
Kefu Chai [Mon, 7 Mar 2022 16:00:28 +0000 (00:00 +0800)]
cls/rbd: define SnapshotNamespace's ctor using its parent

simpler this way. also this prevent the compiler from trying to
convert a random value into SnapshotNamespace just because it
has a templated constructor when it tries to lookup a candidate
of operator<<(ostream&, Random value).

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agoMerge pull request #45302 from rzarzynski/wip-crimson-fix-noenoent-no-remove
Kefu Chai [Wed, 9 Mar 2022 13:34:47 +0000 (21:34 +0800)]
Merge pull request #45302 from rzarzynski/wip-crimson-fix-noenoent-no-remove

crimson/osd: fix no ENOENT when removing already removed object

Reviewed-by: chunmei-liu <chunmei.liu@intel.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
3 years agoMerge pull request #45310 from inspur-wyq/wip-doc-cephadm
Kefu Chai [Wed, 9 Mar 2022 13:23:06 +0000 (21:23 +0800)]
Merge pull request #45310 from inspur-wyq/wip-doc-cephadm

doc/cephadm/adoption.rst: fix typos

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
3 years agoMerge pull request #45266 from tchaikov/wip-sphinx
Kefu Chai [Wed, 9 Mar 2022 13:20:24 +0000 (21:20 +0800)]
Merge pull request #45266 from tchaikov/wip-sphinx

admin/doc-requirements: bump sphinx to 4.4.0

Reviewed-by: Michael Fritch <mfritch@suse.com>
Reviewed-by: Laura Flores <lflores@redhat.com>
3 years agoMerge pull request #45297 from idryomov/wip-test-notify-rebuild-object-map
Ilya Dryomov [Wed, 9 Mar 2022 09:15:56 +0000 (10:15 +0100)]
Merge pull request #45297 from idryomov/wip-test-notify-rebuild-object-map

test/librbd/test_notify.py: effect post object map rebuild assert

Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
3 years agodoc/cephadm/adoption.rst: fix typos 45310/head
wangyunqing [Wed, 9 Mar 2022 08:55:13 +0000 (16:55 +0800)]
doc/cephadm/adoption.rst: fix typos

Signed-off-by: wangyunqing <wangyunqing@inspur.com>
3 years agoMerge pull request #45278 from rzarzynski/wip-crimson-fix-logs-in-cls
Samuel Just [Wed, 9 Mar 2022 07:07:42 +0000 (23:07 -0800)]
Merge pull request #45278 from rzarzynski/wip-crimson-fix-logs-in-cls

crimson, cls: fix the inability to print logs from plugins.

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
3 years agoqa: verify idempotent subvolume creation for 'mode' argument 45290/head
Nikhilkumar Shelke [Tue, 8 Mar 2022 09:06:27 +0000 (14:36 +0530)]
qa: verify idempotent subvolume creation for 'mode' argument

Fixes: https://tracker.ceph.com/issues/54375
Signed-off-by: Nikhilkumar Shelke <nshelke@redhat.com>
3 years agomgr/volumes: the 'mode' should honor idempotent subvolume creation
Nikhilkumar Shelke [Tue, 8 Mar 2022 09:00:00 +0000 (14:30 +0530)]
mgr/volumes: the 'mode' should honor idempotent subvolume creation

currently the 'mode' argument is not honored idempotent
subvolume creation for existing subvolume.

Fixes: https://tracker.ceph.com/issues/54375
Signed-off-by: Nikhilkumar Shelke <nshelke@redhat.com>
3 years agodoc/rados/operations/placement-groups: fix --bulk commands 45279/head
Kamoltat [Mon, 7 Mar 2022 14:52:41 +0000 (14:52 +0000)]
doc/rados/operations/placement-groups: fix --bulk commands

Some parts of the documents regarding
the bulk flag  have typos.

Command for creating a pool

was: `ceph osd create test_pool --bulk`

should be: `ceph osd pool create test_pool --bulk`

Command for setting bulk value in a pool

was: `ceph osd pool set test_pool bulk=<true/false/1/0>`

should be: `ceph osd pool set test_pool bulk <true/false/1/0>`

Also removed a bit of trailing white spaces.

Changed `complements` to `complement`.

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

Signed-off-by: Kamoltat <ksirivad@redhat.com>
3 years agodocs: Update Foundation member list for March #45305 45305/head
Mike Perez [Tue, 8 Mar 2022 21:43:03 +0000 (13:43 -0800)]
docs: Update Foundation member list for March #45305

Signed-off-by: Mike Perez <thingee@gmail.com>
3 years agoMerge pull request #45211 from phlogistonjohn/jjm-nfs-cleanups3
Adam King [Tue, 8 Mar 2022 18:42:07 +0000 (13:42 -0500)]
Merge pull request #45211 from phlogistonjohn/jjm-nfs-cleanups3

mgr/nfs: Additional fixes for NFS export management without orchestration

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Michael Fritch <mfritch@suse.com>
3 years agoMerge pull request #45281 from rkachach/fix_issue_54487
Adam King [Tue, 8 Mar 2022 18:33:54 +0000 (13:33 -0500)]
Merge pull request #45281 from rkachach/fix_issue_54487

mgr/cephadm: fixing MDSSpec ctr

Reviewed-by: Adam King <adking@redhat.com>
3 years agoMerge pull request #45039 from Matan-B/wip-matanb-nfs-timeout
Adam King [Tue, 8 Mar 2022 18:31:40 +0000 (13:31 -0500)]
Merge pull request #45039 from Matan-B/wip-matanb-nfs-timeout

qa/tasks/cephfs: increase timeout in test_nfs.py

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agocrimson/osd: fix no ENOENT when removing already removed object 45302/head
Radoslaw Zarzynski [Tue, 8 Mar 2022 17:25:29 +0000 (17:25 +0000)]
crimson/osd: fix no ENOENT when removing already removed object

This patch deals with the following problem:

```
[rzarzynski@o06 build]$ RBD_FEATURES="21" ./bin/ceph_test_cls_rbd --gtest_filter=TestClsRbd.create
Running main() from gmock_main.cc
Note: Google Test filter = TestClsRbd.create
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from TestClsRbd
[ RUN      ] TestClsRbd.create
../src/test/cls_rbd/test_cls_rbd.cc:467: Failure
Expected equality of these values:
  -2
  ioctx.remove(oid)
    Which is: 0
[  FAILED  ] TestClsRbd.create (10 ms)
[----------] 1 test from TestClsRbd (10 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (2805 ms total)
[  PASSED  ] 0 tests.
[  FAILED  ] 1 test, listed below:
[  FAILED  ] TestClsRbd.create

 1 FAILED TEST
```

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
3 years agoMerge pull request #45214 from cbodley/wip-rgw-ancient-curl-workaround
Casey Bodley [Tue, 8 Mar 2022 15:32:39 +0000 (10:32 -0500)]
Merge pull request #45214 from cbodley/wip-rgw-ancient-curl-workaround

cmake/rgw: remove workaround for ancient libcurl

Reviewed-by: Yehuda Sadeh <ysadehwe@redhat.com>
3 years agoMerge pull request #44488 from cfsnyder/wip-53788-reopen-ops-log-sighup
Casey Bodley [Tue, 8 Mar 2022 15:30:36 +0000 (10:30 -0500)]
Merge pull request #44488 from cfsnyder/wip-53788-reopen-ops-log-sighup

rgw: reopen ops log file on sighup

Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 years agoMerge pull request #45212 from cbodley/wip-54435
Casey Bodley [Tue, 8 Mar 2022 15:29:48 +0000 (10:29 -0500)]
Merge pull request #45212 from cbodley/wip-54435

rgw: prevent spurious/lost notifications in the index completion thread

Reviewed-by: Yuval Lifshitz <ylifshit@redhat.com>
3 years agoMerge pull request #44859 from cfsnyder/wip-54112-rgw-segfault-init-fetch
Casey Bodley [Tue, 8 Mar 2022 13:31:54 +0000 (08:31 -0500)]
Merge pull request #44859 from cfsnyder/wip-54112-rgw-segfault-init-fetch

rgw: fix segfault in UserAsyncRefreshHandler::init_fetch

Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 years agoMerge pull request #44946 from adamemerson/wip-54208
Casey Bodley [Tue, 8 Mar 2022 13:31:15 +0000 (08:31 -0500)]
Merge pull request #44946 from adamemerson/wip-54208

rgw: Fix data race in ChangeStatus

Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 years agorgw: initialize RGWIndexCompletionManager thread after related members 45212/head
Casey Bodley [Mon, 7 Mar 2022 20:10:07 +0000 (15:10 -0500)]
rgw: initialize RGWIndexCompletionManager thread after related members

resolves valgrind issues about RGWIndexCompletionManager::process()
using uninitialized memory

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agotest/librbd/test_notify.py: effect post object map rebuild assert 45297/head
Ilya Dryomov [Tue, 8 Mar 2022 12:56:15 +0000 (13:56 +0100)]
test/librbd/test_notify.py: effect post object map rebuild assert

Instead of just optionally skipping update_features test, commit
9c0b239d70cd ("qa/upgrade: conditionally disable update_features
tests") moved it after rebuild_object_map test.  This isn't right
because update_features test invalidates the object map as a side
effect and rebuild_object_map test is what makes it valid again:

  assert((image.flags() & RBD_FLAG_OBJECT_MAP_INVALID) == 0)

Let's make this assert effective, at least when update_features
test isn't skipped.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
3 years agoMerge pull request #45274 from Matan-B/wip-matanb-c-ops-debug
Samuel Just [Tue, 8 Mar 2022 03:15:36 +0000 (19:15 -0800)]
Merge pull request #45274 from Matan-B/wip-matanb-c-ops-debug

crimson/osd: do_pgnls_common debug message format

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
Reviewed-by: Kefu Chai <tchaikov@gmail.com>
3 years agocrimson/osd, osd: don't use VLA in cls_log() anymore. 45278/head
Radoslaw Zarzynski [Tue, 8 Mar 2022 01:51:09 +0000 (01:51 +0000)]
crimson/osd, osd: don't use VLA in cls_log() anymore.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
3 years agocrimson, cls: fix the inability to print logs from plugins.
Radoslaw Zarzynski [Fri, 4 Mar 2022 11:03:05 +0000 (11:03 +0000)]
crimson, cls: fix the inability to print logs from plugins.

`cls_log()` of the interface between an OSD and a plugin
(a Ceph Class) is implemented on top of the `dout` macros
and shared between crimson and the classical OSD.

Unfortunately, when a plugin is hosted inside crimson,
this causes the inability to send to any in-plugin generated
message to the `seastar::logger` for the `objclass` subsystem.

This patch differtiates the implementation of `cls_log()`,
and thus allow the `seastar::logger`-based implementation
of `dout` to be used.

After the fix:

```
DEBUG 2022-03-07 14:12:14,124 [shard 0] osd - handling op call on object 1:424638ea:::image1:head
DEBUG 2022-03-07 14:12:14,124 [shard 0] osd - calling method rbd.create, num_read=0, num_write=0
DEBUG 2022-03-07 14:12:14,125 [shard 0] objclass - <cls> ../src/cls/rbd/cls_rbd.cc:787: create object_prefix=image1 size=0 order=22 features=0
DEBUG 2022-03-07 14:12:14,125 [shard 0] osd - handling op omap-get-vals-by-keys on object 1:424638ea:::image1:head
DEBUG 2022-03-07 14:12:14,125 [shard 0] osd - omap_get_vals_by_keys: object does not exist: 1:424638ea:::image1:head
```

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
3 years agoMerge pull request #44831 from adamemerson/wip-prepend
Adam C. Emerson [Mon, 7 Mar 2022 20:51:24 +0000 (15:51 -0500)]
Merge pull request #44831 from adamemerson/wip-prepend

build: PREPEND -Og, not APPEND

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
3 years agoMerge pull request #43858 from rzarzynski/wip-msgr-no-cpp_error-on-read
Ilya Dryomov [Mon, 7 Mar 2022 17:30:03 +0000 (18:30 +0100)]
Merge pull request #43858 from rzarzynski/wip-msgr-no-cpp_error-on-read

msg/async: remove the misleading error description on read failures

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
3 years agoMerge pull request #45277 from rzarzynski/wip-crimson-fix-bo-in-pgbackend
Kefu Chai [Mon, 7 Mar 2022 16:28:22 +0000 (00:28 +0800)]
Merge pull request #45277 from rzarzynski/wip-crimson-fix-bo-in-pgbackend

crimson/osd: fix buffer overflow due to missed debug's param

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
3 years agosubmodule: bump up rapidjson submodule 45276/head
Kefu Chai [Sat, 5 Mar 2022 06:59:25 +0000 (14:59 +0800)]
submodule: bump up rapidjson submodule

to include the C++20 fixes introduced recently.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agomgr/dashboard: fix columns in host table with NaN Undefined 44843/head
Avan Thakkar [Mon, 31 Jan 2022 13:53:10 +0000 (19:23 +0530)]
mgr/dashboard: fix columns in host table  with NaN Undefined

Fixes: https://tracker.ceph.com/issues/54068
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
3 years agomgr/cephadm: fixing MDSSpec ctr 45281/head
Redouane Kachach [Mon, 7 Mar 2022 16:03:08 +0000 (17:03 +0100)]
mgr/cephadm: fixing MDSSpec ctr
Fixes issue: https://tracker.ceph.com/issues/54487

Signed-off-by: Redouane Kachach <rkachach@redhat.com>
3 years agoos/bluestore: Fix problem with allocation desync 44913/head
Gabriel BenHanokh [Mon, 7 Mar 2022 15:36:34 +0000 (17:36 +0200)]
os/bluestore: Fix problem with allocation desync

Close window for possibility to capture allocator state and bluefs state
that are not in sync.

Signed-off-by: Gabriel Benhanokh <gbenhano@redhat.com>
3 years agoos/bluestore/bluefs: Fix sync compaction
Adam Kupczyk [Thu, 3 Mar 2022 14:39:00 +0000 (15:39 +0100)]
os/bluestore/bluefs: Fix sync compaction

Fixes problem with sync compaction (_rewrite_log_and_layout_sync).
There was a problem with not updating log_seq after compacting log.

It cause to stop _replay log right after first transaction.

... 20 bluefs _replay 0x0:  op_dir_create sharding
... 20 bluefs _replay 0x0:  op_dir_link  sharding/def to 21
... 20 bluefs _replay 0x0:  op_jump_seq 1025
... 10 bluefs _read h 0x555557c46400 0x1000~1000 from file(ino 1 size 0x1000 mtime 0.000000 allocated 410000 alloc_commit 410000 extents [1:0x1540000~410000])
... 20 bluefs _read left 0xff000 len 0x1000
... 20 bluefs _read got 4096
... 10 bluefs _replay 0x1000: stop: seq 1025 != expected 1026

This is a product of bluefs fine grain locks refactor.

Signed-off-by: Adam Kupczyk <akupczyk@redhat.com>
(cherry picked from commit 2f8e37064ca079c960929d7bb91e84fbf7f5cd47)

Conflicts:
src/test/objectstore/test_bluefs.cc

3 years agoosd: Modify OSD Fast-Shutdown to work safely
Gabriel BenHanokh [Mon, 7 Mar 2022 15:16:54 +0000 (17:16 +0200)]
osd: Modify OSD Fast-Shutdown to work safely

quiesce all activities and destage allocations to disk before killing the OSD

    1) keep the old (unsafe) fast-shutdown when we are not using NCB (non null-manager())
    2) skip service.prepare_to_stop() which can take as much as 10 seconds
    3) skip debug options in fast-shutdown
    4) set_state(STATE_STOPPING) which will stop accepting new tasks to this OSD
    5) clear op_shardedwq queues, this is safe since we didn't started processing them
    6) stop timer
    7) drain osd_op_tp (no new items will be added)
    8) now we can safely call umount which will close_db/bluefs and will destage allocation to disk
    9) skip _shutdown_cache() when we are in the middle of a fast-shutdown
    10) increase debug level on fast-shutdown
    11) add option for bluestore_qfsck_on_mount to force scan on mount for all tests
    12) disable fsck-on-umount when running fast-shutdown
    13) add an option to increase debug level at fast-shutdown umount()
    14) set a time limit to fast-shutdown

    15) Bug-Fix BlueStore::pool_statfs don't access db after it was removed
    16) Fix error message for qfsck (error was caused by PR https://github.com/ceph/ceph/pull/44563)

    17) make shutdown-timeout configurable

Fixes: https://tracker.ceph.com/issues/53266
Signed-off-by: Gabriel Benhanokh <gbenhano@redhat.com>
3 years agocrimson/osd: fix buffer overflow due to missed debug's param 45277/head
Radoslaw Zarzynski [Mon, 7 Mar 2022 14:04:54 +0000 (14:04 +0000)]
crimson/osd: fix buffer overflow due to missed debug's param

The problem is:

```
DEBUG 2022-03-07 13:50:40,027 [shard 0] osd - calling method rbd.create, num_read=0, num_write=0
DEBUG 2022-03-07 13:50:40,027 [shard 0] objclass - <cls> ../src/cls/rbd/cls_rbd.cc:787: create object_prefix=parent_id size=2097152 order=0 features=1
DEBUG 2022-03-07 13:50:40,027 [shard 0] osd - handling op omap-get-vals-by-keys on object 1:144d5af5:::parent_id:head
=================================================================
==2109764==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7f6de5176e70 at pc 0x7f6dfd2a7157 bp 0x7f6de5176e30 sp 0x7f6de51765d8
WRITE of size 24 at 0x7f6de5176e70 thread T0
    #0 0x7f6dfd2a7156 in __interceptor_sigaltstack.part.0 (/lib64/libasan.so.6+0x54156)
    #1 0x7f6dfd30d5b3 in __asan::PlatformUnpoisonStacks() (/lib64/libasan.so.6+0xba5b3)
    #2 0x7f6dfd31314c in __asan_handle_no_return (/lib64/libasan.so.6+0xc014c)
Reactor stalled for 275 ms on shard 0. Backtrace: 0x45d9d 0xda72bd3 0xd801f73 0xd81f6f9 0xd81fb9c 0xd81fe2c 0xd8200f7 0x12b2f 0x7f6dfd3383c1 0x7f6dfd339b18 0x7f6dfd339bd4 0x7f6dfd339bd4 0x7f6dfd339bd4 0x7f6dfd339bd4 0x7f6dfd33b089 0x7f6dfd33bb36 0x7f6dfd32e0b5 0x7f6dfd32ff3a 0xd61d0 0x32412 0xbd8a7 0xbd134 0x54178 0xba5b3 0xc014c 0x1881f22 0x188344a 0xe8b439d 0xe8b58f2 0x2521d5a 0x2a2ee12 0x2c76349 0x2e04ce9 0x3c70c55 0x3cb8aa8 0x7f6de558de39
    #3 0x1881f22 in fmt::v6::internal::arg_map<fmt::v6::basic_format_context<seastar::internal::log_buf::inserter_iterator, char> >::~arg_map() /usr/include/fmt/core.h:1170
    #4 0x1881f22 in fmt::v6::basic_format_context<seastar::internal::log_buf::inserter_iterator, char>::~basic_format_context() /usr/include/fmt/core.h:1265
    #5 0x1881f22 in fmt::v6::format_handler<fmt::v6::arg_formatter<fmt::v6::internal::output_range<seastar::internal::log_buf::inserter_iterator, char> >, char, fmt::v6::basic_format_context<seastar::internal::log_buf::inserter_iterator, char> >::~format_handler() /usr/include/fmt/format.h:3143
    #6 0x1881f22 in fmt::v6::basic_format_context<seastar::internal::log_buf::inserter_iterator, char>::iterator fmt::v6::vformat_to<fmt::v6::arg_formatter<fmt::v6::internal::output_range<seastar::internal::log_buf::inserter_iterator, char> >, char, fmt::v6::basic_format_context<seastar::internal::log_buf::inserter_iterator, char> >(fmt::v6::arg_formatter<fmt::v6::internal::output_range<seastar::internal::log_buf::inserter_iterator, char> >::range, fmt::v6::basic_string_view<char>, fmt::v6::basic_format_args<fmt::v6::basic_format_context<seastar::internal::log_buf::inserter_iterator, char> >, fmt::v6::internal::locale_ref) /usr/include/fmt/format.h:3206
    #7 0x188344a in seastar::internal::log_buf::inserter_iterator fmt::v6::vformat_to<fmt::v6::basic_string_view<char>, seastar::internal::log_buf::inserter_iterator, , 0>(seastar::internal::log_buf::inserter_iterator, fmt::v6::basic_string_view<char> const&, fmt::v6::basic_format_args<fmt::v6::basic_format_context<fmt::v6::type_identity<seastar::internal::log_buf::inserter_iterator>::type, fmt::v6::internal::char_t_impl<fmt::v6::basic_string_view<char>, void>::type> >) /usr/include/fmt/format.h:3395
    #8 0x188344a in seastar::internal::log_buf::inserter_iterator fmt::v6::format_to<seastar::internal::log_buf::inserter_iterator, std::basic_string_view<char, std::char_traits<char> >, hobject_t const&, 0>(seastar::internal::log_buf::inserter_iterator, std::basic_string_view<char, std::char_traits<char> > const&, hobject_t const&) /usr/include/fmt/format.h:3418
    #9 0x188344a in seastar::logger::log<hobject_t const&>(seastar::log_level, seastar::logger::format_info, hobject_t const&)::{lambda(seastar::internal::log_buf::inserter_iterator)#1}::operator()(seastar::internal::log_buf::inserter_iterator) const ../src/seastar/include/seastar/util/log.hh:227
    #10 0x188344a in seastar::logger::lambda_log_writer<seastar::logger::log<hobject_t const&>(seastar::log_level, seastar::logger::format_info, hobject_t const&)::{lambda(seastar::internal::log_buf::inserter_iterator)#1}>::operator()(seastar::internal::log_buf::inserter_iterator) ../src/seastar/include/seastar/util/log.hh:106
    #11 0xe8b439d in operator() ../src/seastar/src/util/log.cc:268
    #12 0xe8b58f2 in seastar::logger::do_log(seastar::log_level, seastar::logger::log_writer&) ../src/seastar/src/util/log.cc:280
    #13 0x2521d5a in void seastar::logger::log<hobject_t const&>(seastar::log_level, seastar::logger::format_info, hobject_t const&) ../src/seastar/include/seastar/util/log.hh:230
    #14 0x2a2ee12 in void seastar::logger::debug<hobject_t const&>(seastar::logger::format_info, hobject_t const&) ../src/seastar/include/seastar/util/log.hh:373
    #15 0x2a2ee12 in PGBackend::omap_get_vals_by_keys(ObjectState const&, OSDOp&, object_stat_sum_t&) const ../src/crimson/osd/pg_backend.cc:1220
    #16 0x2c76349 in operator()<PGBackend, ObjectState> ../src/crimson/osd/ops_executer.cc:577
    #17 0x2c76349 in do_const_op<crimson::osd::OpsExecuter::execute_op(OSDOp&)::<lambda(auto:167&, const auto:168&)> > ../src/crimson/osd/ops_executer.cc:449
    #18 0x2e04ce9 in do_read_op<crimson::osd::OpsExecuter::execute_op(OSDOp&)::<lambda(auto:167&, const auto:168&)> > ../src/crimson/osd/ops_executer.h:216
    #19 0x2e04ce9 in crimson::osd::OpsExecuter::execute_op(OSDOp&) ../src/crimson/osd/ops_executer.cc:576
Reactor stalled for 762 ms on shard 0. Backtrace: 0x45d9d 0xda72bd3 0xd801f73 0xd81f6f9 0xd81fb9c 0xd81fe2c 0xd8200f7 0x12b2f 0x7f6dfd33ae85 0x7f6dfd33bb36 0x7f6dfd32e0b5 0x7f6dfd32ff3a 0xd61d0 0x32412 0xbd8a7 0xbd134 0x54178 0xba5b3 0xc014c 0x1881f22 0x188344a 0xe8b439d 0xe8b58f2 0x2521d5a 0x2a2ee12 0x2c76349 0x2e04ce9 0x3c70c55 0x3cb8aa8 0x7f6de558de39
    #20 0x3c70c55 in execute_osd_op ../src/crimson/osd/objclass.cc:35
    #21 0x3cb8aa8 in cls_cxx_map_get_val(void*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ceph::buffer::v15_2_0::list*) ../src/crimson/osd/objclass.cc:372
    #22 0x7f6de558de39  (/home/rzarzynski/ceph1/build/lib/libcls_rbd.so.1.0.0+0x28e39)

0x7f6de5176e70 is located 249456 bytes inside of 262144-byte region [0x7f6de513a000,0x7f6de517a000)
allocated by thread T0 here:
    #0 0x7f6dfd3084a7 in aligned_alloc (/lib64/libasan.so.6+0xb54a7)
    #1 0xdd414fc in seastar::thread_context::make_stack(unsigned long) ../src/seastar/src/core/thread.cc:196
    #2 0x7fff3214bc4f  ([stack]+0xa5c4f)
```

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
3 years agoMerge pull request #45225 from dang/wip-dang-fix-inverted
Daniel Gryniewicz [Mon, 7 Mar 2022 14:10:11 +0000 (09:10 -0500)]
Merge pull request #45225 from dang/wip-dang-fix-inverted

RGW - Fix inverted return check

Reviewed-by: Eric Ivancich <eivancic@redhat.com>
3 years agocrimson/osd: do_pgnls_common debug message format 45274/head
Matan Breizman [Mon, 7 Mar 2022 12:47:11 +0000 (12:47 +0000)]
crimson/osd: do_pgnls_common debug message format

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
3 years agoMerge pull request #45149 from sunnyku/wip-fix-schedule-status
Ilya Dryomov [Mon, 7 Mar 2022 11:14:36 +0000 (12:14 +0100)]
Merge pull request #45149 from sunnyku/wip-fix-schedule-status

mgr/rbd_support: cast pool_id from int to str when collecting LevelSpec

Reviewed-by: Mykola Golub <mgolub@suse.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
3 years agobuild: avoid Windows linking issues 45272/head
Lucian Petrut [Mon, 7 Mar 2022 08:20:03 +0000 (08:20 +0000)]
build: avoid Windows linking issues

A recent commit [1] changed the way in which libceph-common is built.
Previously, it was always built statically but now it uses the
"CEPH_SHARED" flag.

Static Windows builds are now failing. For now, we'll just revert the
previous behavior and always build libceph-common dinamically on
Windows.

[1] 22fefb2338cfc4fcb03ece3cbf77aa964a7f17f2

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
3 years agomgr/dashboard: highlight the search text in cluster logs 45218/head
Sarthak0702 [Tue, 1 Mar 2022 18:07:38 +0000 (23:37 +0530)]
mgr/dashboard: highlight the search text in cluster logs

Fixes: https://tracker.ceph.com/issues/54445
Signed-off-by: Sarthak0702 <sarthak.0702@gmail.com>
3 years agoinclude: Define dlfcn.h on Windows
Lucian Petrut [Mon, 7 Mar 2022 08:12:23 +0000 (08:12 +0000)]
include: Define dlfcn.h on Windows

"dlfcn.h" is not available on Windows, so Ceph provides a drop-in
replacement through "dlfcn_compat.h".

The issue is that directly importing "dlfcn.h" fails at the moment,
for which reason we'll simply add a file called "dlfcn.h" that
includes "dlfcn_compat.h".

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
3 years agoMerge pull request #42098 from joscollin/wip-B50033-rank0-stale-perf-stats wip-jsalomon-prim-balance-score
Venky Shankar [Mon, 7 Mar 2022 05:07:23 +0000 (10:37 +0530)]
Merge pull request #42098 from joscollin/wip-B50033-rank0-stale-perf-stats

mgr/stats: be resilient to offline rank0 MDS

Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agoMerge pull request #41397 from vshankar/wip-48619
Venky Shankar [Mon, 7 Mar 2022 05:04:15 +0000 (10:34 +0530)]
Merge pull request #41397 from vshankar/wip-48619

cephfs-top: display average read/write/metadata latency

Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agoMerge pull request #42001 from mchangir/mds-implement-new-getvxattr-rpc
Venky Shankar [Mon, 7 Mar 2022 05:02:57 +0000 (10:32 +0530)]
Merge pull request #42001 from mchangir/mds-implement-new-getvxattr-rpc

mds,client: add new getvxattr op

Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agoMerge pull request #44863 from nmshelke/ceph-fuse-54049
Venky Shankar [Mon, 7 Mar 2022 05:00:51 +0000 (10:30 +0530)]
Merge pull request #44863 from nmshelke/ceph-fuse-54049

ceph-fuse: perform cleanup if test_dentry_handling failed

Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agocrimson/os/seastore: make segment cleaner do gc based on gc benefit cost ratio 43474/head
Xuehan Xu [Tue, 28 Sep 2021 09:35:30 +0000 (17:35 +0800)]
crimson/os/seastore: make segment cleaner do gc based on gc benefit cost ratio

Segments' benefit cost ratio is calculated:
segment_last_mod_time = max{last modification time of all extents in the segment}
segment_last_rewrite_time = max{last rewrite time of all extents in the segment}
segment_utilization = segment_live_bytes / segment_size
segment_age = current_time - max{segment_last_mod_time, segment_last_rewrite_time}
benefit_cost_ratio = (1 - segment_utilization) * segment_age / (1 + segment_utilization)

Segment cleaner always reclaim the segment with the largest benefit cost ratio

Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
3 years agocrimson/os/seastore/segment_cleaner: add space reclaim related metrics
Xuehan Xu [Wed, 1 Dec 2021 10:32:34 +0000 (18:32 +0800)]
crimson/os/seastore/segment_cleaner: add space reclaim related metrics

Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
3 years agocrimson/os/seastore/segment_cleaner: set the default maximum space reclaimed in one...
Xuehan Xu [Tue, 30 Nov 2021 01:52:56 +0000 (09:52 +0800)]
crimson/os/seastore/segment_cleaner: set the default maximum space reclaimed in one gc run to 32MB

Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
3 years agocrimson/os/seastore/EPM: differentiate new extents and rewritten extents
Xuehan Xu [Thu, 9 Dec 2021 04:26:39 +0000 (12:26 +0800)]
crimson/os/seastore/EPM: differentiate new extents and rewritten extents

For new extents, randomly write them into a group of writers; while, for
rewritten extents, write them into a dedicated writer. Since rewritten
extents are sorted by their age, writing them into a single writer should
speed up the convergence of the ages of extents in the same segment.

Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
3 years agocrimson/os/seastore: track extents' last modification time
Xuehan Xu [Fri, 4 Mar 2022 08:56:33 +0000 (16:56 +0800)]
crimson/os/seastore: track extents' last modification time

Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
3 years agoMerge pull request #45174 from adk3798/no-drain-admin
Adam King [Sun, 6 Mar 2022 17:19:17 +0000 (12:19 -0500)]
Merge pull request #45174 from adk3798/no-drain-admin

mgr/cephadm: block draining last _admin host

Reviewed-by: Michael Fritch <mfritch@suse.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
3 years agoMerge pull request #45202 from adk3798/no-label-rm-admin
Adam King [Sun, 6 Mar 2022 17:17:08 +0000 (12:17 -0500)]
Merge pull request #45202 from adk3798/no-label-rm-admin

mgr/cephadm: block removing last instance of _admin label

Reviewed-by: Michael Fritch <mfritch@suse.com>
3 years agomgr/cephadm: use block quote for "typical use" 45266/head
Kefu Chai [Sun, 6 Mar 2022 07:28:16 +0000 (15:28 +0800)]
mgr/cephadm: use block quote for "typical use"

otherwise sphinx takes "Typical use" and the following line as a
field. see also

https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html#field-lists

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agomgr/cephadm: improve the formatting of docstring
Kefu Chai [Sun, 6 Mar 2022 07:20:14 +0000 (15:20 +0800)]
mgr/cephadm: improve the formatting of docstring

add an empty line before a doctest block would help
sphinx to tell where the session starts.

see also https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html#doctest-blocks

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agomgr/cephadm: document notes using "note::" directive
Kefu Chai [Sun, 6 Mar 2022 07:04:21 +0000 (15:04 +0800)]
mgr/cephadm: document notes using "note::" directive

so it can be rendered by sphinx in a better way.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agodoc/conf.py: silence warnings from breathe
Kefu Chai [Sun, 6 Mar 2022 06:27:50 +0000 (14:27 +0800)]
doc/conf.py: silence warnings from breathe

breathe calls doxygen for extracting/generating docs from code.
while doxygen complains at seeing undocumented fields/func. these
warnings could fail the sphinx-build command, if it takes warnings
as errors.

in this change, these warnings are silenced.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agomgr/cephadm: add empty line after param list in docstring
Kefu Chai [Sun, 6 Mar 2022 06:23:42 +0000 (14:23 +0800)]
mgr/cephadm: add empty line after param list in docstring

this helps to silence the warning from sphinx, like

src/pybind/mgr/orchestrator/_interface.py:docstring of orchestrator._interface.Orchestrator.remove_osds:9: WARNING: Field list ends without a blank line; unexpected unindent.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>