]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
4 years agodoc/man/8/cephadm: add --log-to-file (and --single-host-defaults) 42227/head
Sage Weil [Mon, 12 Jul 2021 17:45:35 +0000 (13:45 -0400)]
doc/man/8/cephadm: add --log-to-file (and --single-host-defaults)

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agocephadm: add bootstrap --log-to-file option
Sage Weil [Wed, 7 Jul 2021 16:14:36 +0000 (12:14 -0400)]
cephadm: add bootstrap --log-to-file option

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agoMerge pull request #41953 from SMIL-Infra/fix-dashboard-osd-count
Ernesto Puerta [Thu, 1 Jul 2021 15:26:32 +0000 (17:26 +0200)]
Merge pull request #41953 from SMIL-Infra/fix-dashboard-osd-count

mgr/dashboard: fix OSD out count

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
4 years agoMerge pull request #42116 from votdev/issue_51443_migrate_userdb
Ernesto Puerta [Thu, 1 Jul 2021 15:23:03 +0000 (17:23 +0200)]
Merge pull request #42116 from votdev/issue_51443_migrate_userdb

mgr/dashboard: User database migration has been cut out

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Tatjana Dehler <tdehler@suse.com>
4 years agoMerge PR #42107 into master
Sage Weil [Thu, 1 Jul 2021 13:11:09 +0000 (09:11 -0400)]
Merge PR #42107 into master

* refs/pull/42107/head:
mgr/ActivePyModules: streamline mgr_ips a bit
mgr/ActivePyModules: don't take unnecessary lock
pybind/mgr/mgr_module: use get("mgr_ips") for standby get_mgr_ip()
mgr: add get() for standby modules

Reviewed-by: Daniel Pivonka <dpivonka@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Patrick Seidensal <pseidensal@suse.com>
4 years agoMerge pull request #42130 from tchaikov/wip-doc-install
Kefu Chai [Thu, 1 Jul 2021 09:59:38 +0000 (17:59 +0800)]
Merge pull request #42130 from tchaikov/wip-doc-install

doc/install/get-packages: s/el7/el8/ and cleanups

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
4 years agoMerge pull request #42108 from zdover23/wip-doc-upgrading-ceph-cancelling-the-upgrade...
Kefu Chai [Thu, 1 Jul 2021 09:50:34 +0000 (17:50 +0800)]
Merge pull request #42108 from zdover23/wip-doc-upgrading-ceph-cancelling-the-upgrade-2021-06-30

doc/cephadm: improve "Canceling an Upgrade"

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
4 years agodoc/install/get-packages: do not mention additional 3rd party packages 42130/head
Kefu Chai [Thu, 1 Jul 2021 08:34:55 +0000 (16:34 +0800)]
doc/install/get-packages: do not mention additional 3rd party packages

since we are able to build and run on ubuntu focal without extra
dependencies of 3rd party packages, there is no need to mention them.
actually all of the removed packages are available in ubuntu focal.
some of them have different package names though.

the same applies to el8.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/install/get-packages: s/el7/el8/
Kefu Chai [Thu, 1 Jul 2021 08:25:19 +0000 (16:25 +0800)]
doc/install/get-packages: s/el7/el8/

since we don't build for el7 anymore. replace all occurrences of el7 with
el8.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #42080 from cyx1231st/wip-seastore-fix-cache
Samuel Just [Thu, 1 Jul 2021 04:17:47 +0000 (21:17 -0700)]
Merge pull request #42080 from cyx1231st/wip-seastore-fix-cache

crimson/os/seastore/cache: misc fixes and cleanup

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Xuehan Xu <xuxuehan@360.cn>
4 years agocrimson/os/seastore/cache: rename try_construct_record to prepare_record 42080/head
Yingxin Cheng [Wed, 30 Jun 2021 06:03:29 +0000 (14:03 +0800)]
crimson/os/seastore/cache: rename try_construct_record to prepare_record

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/os/seastore/cache: wait io when read from Cache::extents
Yingxin Cheng [Wed, 30 Jun 2021 05:22:07 +0000 (13:22 +0800)]
crimson/os/seastore/cache: wait io when read from Cache::extents

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/os/seastore/cache: add the missing extent invalid check
Yingxin Cheng [Wed, 30 Jun 2021 03:55:39 +0000 (11:55 +0800)]
crimson/os/seastore/cache: add the missing extent invalid check

see 2bc257beb2ef1253e38c254745f42b3ac5db52de

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/os/seastore/cache: add missing add_to_read_set()
Yingxin Cheng [Wed, 30 Jun 2021 03:47:50 +0000 (11:47 +0800)]
crimson/os/seastore/cache: add missing add_to_read_set()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/os/seastore/cache: cleanup get_extent_if_cached()
Yingxin Cheng [Wed, 30 Jun 2021 03:44:56 +0000 (11:44 +0800)]
crimson/os/seastore/cache: cleanup get_extent_if_cached()

And remove the query_cache_for_extent(t).

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/os/seastore/cache: fix get_extent_by_type(t) to use Transaction::get_extent()
Yingxin Cheng [Wed, 30 Jun 2021 03:06:52 +0000 (11:06 +0800)]
crimson/os/seastore/cache: fix get_extent_by_type(t) to use Transaction::get_extent()

The original query_cache_for_extent() doesn't call wait_io() if the
extent is pending. And the following get_extent_by_type() already covers
the lookup to Cache::extents and also implements wait_io() correctly.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/os/seastore/cache: add absent extent to read-set before retire
Yingxin Cheng [Tue, 29 Jun 2021 01:39:10 +0000 (09:39 +0800)]
crimson/os/seastore/cache: add absent extent to read-set before retire

So that transaction can be invalidated if the retiring extent has
conflict.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/os/seastore/cache: remove retired extents from cache
Yingxin Cheng [Tue, 29 Jun 2021 01:36:01 +0000 (09:36 +0800)]
crimson/os/seastore/cache: remove retired extents from cache

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/os/seastore: fix print_detail() of RetiredExtentPlaceholder
Yingxin Cheng [Tue, 29 Jun 2021 01:31:49 +0000 (09:31 +0800)]
crimson/os/seastore: fix print_detail() of RetiredExtentPlaceholder

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/os/seastore/cache: cleanup try_construct_record() optional return
Yingxin Cheng [Mon, 28 Jun 2021 14:12:46 +0000 (22:12 +0800)]
crimson/os/seastore/cache: cleanup try_construct_record() optional return

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: check invalid transaction only
Yingxin Cheng [Mon, 28 Jun 2021 13:38:49 +0000 (21:38 +0800)]
crimson/onode-staged-tree: check invalid transaction only

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/os/seastore/cache: retire PRESENT extents and add to retired-set
Yingxin Cheng [Mon, 28 Jun 2021 13:36:18 +0000 (21:36 +0800)]
crimson/os/seastore/cache: retire PRESENT extents and add to retired-set

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/os/seastore/cache: invalidate transaction referencing retired extents
Yingxin Cheng [Mon, 28 Jun 2021 13:32:21 +0000 (21:32 +0800)]
crimson/os/seastore/cache: invalidate transaction referencing retired extents

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agoMerge pull request #42103 from athanatos/sjust/wip-seastore-collection-ordering
Kefu Chai [Thu, 1 Jul 2021 02:06:40 +0000 (10:06 +0800)]
Merge pull request #42103 from athanatos/sjust/wip-seastore-collection-ordering

crimson/seastore: enforce per-collection transaction ordering

Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Xuehan Xu <xuxuehan@360.cn>
4 years agoMerge pull request #41932 from tchaikov/wip-mgr-mock-osdmap
Kefu Chai [Thu, 1 Jul 2021 01:50:45 +0000 (09:50 +0800)]
Merge pull request #41932 from tchaikov/wip-mgr-mock-osdmap

mgr,pybind/mgr: add OSDMap.build_simple() method

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
4 years agoMerge pull request #41958 from ceph/wip-yuriw-notes-14.2.22_2
Ilya Dryomov [Wed, 30 Jun 2021 22:30:49 +0000 (00:30 +0200)]
Merge pull request #41958 from ceph/wip-yuriw-notes-14.2.22_2

doc: 14.2.22 Release Notes

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
4 years agodoc/releases/nautilus,octopus: add a note for msgr2 interoperability fix 41958/head
Ilya Dryomov [Wed, 23 Jun 2021 19:42:11 +0000 (21:42 +0200)]
doc/releases/nautilus,octopus: add a note for msgr2 interoperability fix

octopus 15.2.13 already shipped, let's add it retroactively.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
4 years agodoc/releases/nautilus: add notable changes for RADOS
Neha Ojha [Tue, 22 Jun 2021 22:39:15 +0000 (22:39 +0000)]
doc/releases/nautilus: add notable changes for RADOS

Signed-off-by: Neha Ojha <nojha@redhat.com>
4 years agodoc: 14.2.22 Release Notes
Yuri Weinstein [Mon, 21 Jun 2021 20:27:01 +0000 (20:27 +0000)]
doc: 14.2.22 Release Notes

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
4 years agoMerge pull request #42118 from sandrobonazzola/patch-3
Ilya Dryomov [Wed, 30 Jun 2021 22:05:17 +0000 (00:05 +0200)]
Merge pull request #42118 from sandrobonazzola/patch-3

doc/rbd/iscsi-initiator-linux: set "product" in multipath.conf

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
4 years agodoc/rbd/iscsi-initiator-linux: set "product" in multipath.conf 42118/head
Sandro Bonazzola [Wed, 30 Jun 2021 16:14:09 +0000 (18:14 +0200)]
doc/rbd/iscsi-initiator-linux: set "product" in multipath.conf

Adding missing parameter in multipath configuration.  See
https://bugzilla.redhat.com/show_bug.cgi?id=1769135.

Signed-off-by: Sandro Bonazzola <sbonazzo@redhat.com>
4 years agoMerge pull request #42121 from ceph/wip-md
Josh Durgin [Wed, 30 Jun 2021 18:42:00 +0000 (11:42 -0700)]
Merge pull request #42121 from ceph/wip-md

ceph-release-notes: Support for markdown for new ceph.io site

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
4 years agoceph-release-notes: Support for markdown for new ceph.io site 42121/head
David Galloway [Wed, 30 Jun 2021 17:11:06 +0000 (13:11 -0400)]
ceph-release-notes: Support for markdown for new ceph.io site

Signed-off-by: David Galloway <dgallowa@redhat.com>
4 years agomgr/ActivePyModules: streamline mgr_ips a bit 42107/head
Sage Weil [Wed, 30 Jun 2021 13:03:13 +0000 (09:03 -0400)]
mgr/ActivePyModules: streamline mgr_ips a bit

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agomgr/ActivePyModules: don't take unnecessary lock
Sage Weil [Tue, 29 Jun 2021 22:49:52 +0000 (18:49 -0400)]
mgr/ActivePyModules: don't take unnecessary lock

This isn't needed.

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agopybind/mgr/mgr_module: use get("mgr_ips") for standby get_mgr_ip()
Sage Weil [Tue, 29 Jun 2021 22:47:13 +0000 (18:47 -0400)]
pybind/mgr/mgr_module: use get("mgr_ips") for standby get_mgr_ip()

This is necessary to allow the standby mgr to bind to the right IP.

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agomgr: add get() for standby modules
Sage Weil [Tue, 29 Jun 2021 22:46:36 +0000 (18:46 -0400)]
mgr: add get() for standby modules

Fixes: https://tracker.ceph.com/issues/51446
Signed-off-by: Sage Weil <sage@newdream.net>
4 years agoMerge pull request #42026 from rhcs-dashboard/bucket-name-regex-fix
Ernesto Puerta [Wed, 30 Jun 2021 15:09:40 +0000 (17:09 +0200)]
Merge pull request #42026 from rhcs-dashboard/bucket-name-regex-fix

mgr/dashboard: Fix bucket name input allowing space in the value

Reviewed-by: Waad Alkhoury <walkhour@redhat.com>
Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
4 years agoMerge pull request #41353 from a16bitsysop/mgr-node_modules
Kefu Chai [Wed, 30 Jun 2021 14:44:55 +0000 (22:44 +0800)]
Merge pull request #41353 from a16bitsysop/mgr-node_modules

pybind/mgr/CMakeLists.txt: exclude files not used at runtime

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
4 years agomgr/dashboard: User database migration has been cut out 42116/head
Volker Theile [Wed, 30 Jun 2021 12:00:28 +0000 (14:00 +0200)]
mgr/dashboard: User database migration has been cut out

This PR will revert changes done by https://tracker.ceph.com/issues/49645 to auto-migrate user database v1 to v2.

Fixes: https://tracker.ceph.com/issues/51443
Signed-off-by: Volker Theile <vtheile@suse.com>
4 years agoMerge pull request #41954 from pkalever/notrim
Ilya Dryomov [Wed, 30 Jun 2021 12:02:10 +0000 (14:02 +0200)]
Merge pull request #41954 from pkalever/notrim

rbd-nbd: support notrim option with map command

Reviewed-by: Mykola Golub <mgolub@suse.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
4 years agoMerge pull request #42089 from tchaikov/wip-xattr-cleanup
Kefu Chai [Wed, 30 Jun 2021 11:30:09 +0000 (19:30 +0800)]
Merge pull request #42089 from tchaikov/wip-xattr-cleanup

osd, crimson/osd: do_cmp_xattr() related cleanups

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
4 years agoMerge pull request #42054 from tchaikov/wip-os-xattrs
Kefu Chai [Wed, 30 Jun 2021 11:29:17 +0000 (19:29 +0800)]
Merge pull request #42054 from tchaikov/wip-os-xattrs

os: use transparent comparator in ObjectStore::getattrs()

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
4 years agoMerge pull request #42043 from tchaikov/wip-ceph-argparse-ann
Kefu Chai [Wed, 30 Jun 2021 11:28:07 +0000 (19:28 +0800)]
Merge pull request #42043 from tchaikov/wip-ceph-argparse-ann

pybind/ceph_argparse: do not set self.typeargs in ctor of CephArgtype

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
4 years agoMerge pull request #42087 from tchaikov/wip-common-buffers
Kefu Chai [Wed, 30 Jun 2021 11:27:34 +0000 (19:27 +0800)]
Merge pull request #42087 from tchaikov/wip-common-buffers

common/buffers: check _num directly in list::c_str()

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agoMerge pull request #42084 from tchaikov/wip-49638
Kefu Chai [Wed, 30 Jun 2021 11:26:42 +0000 (19:26 +0800)]
Merge pull request #42084 from tchaikov/wip-49638

qa: run e2e test on centos only

Reviewed-by: Laura Paduano <lpaduano@suse.com>
4 years agoMerge pull request #42047 from tchaikov/wip-autoscaler-ann
Kefu Chai [Wed, 30 Jun 2021 11:26:01 +0000 (19:26 +0800)]
Merge pull request #42047 from tchaikov/wip-autoscaler-ann

pybind/mgr/pg_autoscaler: add typing annotations and cleanups

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
4 years agoMerge pull request #42082 from fengchunsong/master
Kefu Chai [Wed, 30 Jun 2021 11:25:21 +0000 (19:25 +0800)]
Merge pull request #42082 from fengchunsong/master

common: Use double instead of long double to improve performance

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #37866 from pritha-srivastava/wip-sts-47809
Matt Benjamin [Wed, 30 Jun 2021 11:17:22 +0000 (07:17 -0400)]
Merge pull request #37866 from pritha-srivastava/wip-sts-47809

rgw/sts: fix for copy object operation using sts

4 years agoqa/workunits/rbd-nbd: add notrim test 41954/head
Prasanna Kumar Kalever [Mon, 28 Jun 2021 08:27:47 +0000 (13:57 +0530)]
qa/workunits/rbd-nbd: add notrim test

Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
4 years agomgr/dashboard: Fix bucket name input allows space in the value 42026/head
Nizamudeen A [Fri, 25 Jun 2021 13:30:42 +0000 (19:00 +0530)]
mgr/dashboard: Fix bucket name input allows space in the value

Fixes: https://tracker.ceph.com/issues/51368
Signed-off-by: Nizamudeen A <nia@redhat.com>
4 years agopybind/mgr/pg_autoscaler: add typing annotations 42047/head
Kefu Chai [Mon, 28 Jun 2021 03:32:41 +0000 (11:32 +0800)]
pybind/mgr/pg_autoscaler: add typing annotations

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agopybind/mgr/pg_autoscaler: do not index pool_root with pool_name
Kefu Chai [Mon, 28 Jun 2021 05:24:41 +0000 (13:24 +0800)]
pybind/mgr/pg_autoscaler: do not index pool_root with pool_name

pool_root is indexed by pool_id, and we never index it with pool_name.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agopybind/mgr/pg_autoscaler: do not create a tuple long_desc
Kefu Chai [Mon, 28 Jun 2021 04:39:12 +0000 (12:39 +0800)]
pybind/mgr/pg_autoscaler: do not create a tuple long_desc

long_desc is supposed to be a str, not a tuple of str.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agopybind/mgr/pg_autoscaler: extract CrushSubtreeResourceStatus out
Kefu Chai [Mon, 28 Jun 2021 04:28:17 +0000 (12:28 +0800)]
pybind/mgr/pg_autoscaler: extract CrushSubtreeResourceStatus out

as it also serves as part of interface of get_subtree_resource_status(),
not only its internals. to ease adding the type annotations, this class
is promoted out of the class.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agopybind/mgr/pg_autoscaler: define commands using CLICommand
Kefu Chai [Mon, 28 Jun 2021 03:44:05 +0000 (11:44 +0800)]
pybind/mgr/pg_autoscaler: define commands using CLICommand

simpler this way

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agopybind/mgr/pg_autoscaler: define options using Option
Kefu Chai [Mon, 28 Jun 2021 03:34:09 +0000 (11:34 +0800)]
pybind/mgr/pg_autoscaler: define options using Option

more consistent and less error-prune this way.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/cephadm: improve "Canceling an Upgrade" 42108/head
Zac Dover [Wed, 30 Jun 2021 05:20:13 +0000 (15:20 +1000)]
doc/cephadm: improve "Canceling an Upgrade"

This PR improves the section "Canceling an Upgrade"
in the "Upgrading Ceph" chapter of the cephadm
documentation.

I removed an extraneous prompt and rewrote a sentence
so that it was congruent with other sentences in similar
places elsewhere in the documentation.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
4 years agoMerge pull request #41919 from agayev/zoned-more-cleaning-support
Kefu Chai [Wed, 30 Jun 2021 03:07:24 +0000 (11:07 +0800)]
Merge pull request #41919 from agayev/zoned-more-cleaning-support

os/bluestore: More support for cleaning zones.

Reviewed-by: Igor Fedotov <ifedotov@suse.com>
4 years agoMerge pull request #42100 from rzarzynski/wip-crimson-assert_moveable
Kefu Chai [Wed, 30 Jun 2021 02:22:24 +0000 (10:22 +0800)]
Merge pull request #42100 from rzarzynski/wip-crimson-assert_moveable

crimson: introduce assert_moveable().

Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agopybind/ceph_argparse: add more type annotations 42043/head
Kefu Chai [Sun, 27 Jun 2021 08:15:57 +0000 (16:15 +0800)]
pybind/ceph_argparse: add more type annotations

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41976 from tchaikov/wip-crimson-alienstore-lockless
Kefu Chai [Wed, 30 Jun 2021 00:38:41 +0000 (08:38 +0800)]
Merge pull request #41976 from tchaikov/wip-crimson-alienstore-lockless

crimson/os: use lockfree queue for sharded queue

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
4 years agoMerge PR #42101 into master
Patrick Donnelly [Tue, 29 Jun 2021 18:20:36 +0000 (11:20 -0700)]
Merge PR #42101 into master

* refs/pull/42101/head:
cephsqlite: add comment on atexit

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/os/seastore: add collection ordering 42103/head
Samuel Just [Tue, 29 Jun 2021 17:06:45 +0000 (10:06 -0700)]
crimson/os/seastore: add collection ordering

Adds a mutex to SeastoreCollection which ensures that transactions are
ordered on a per-collection basis.  Future optimizations could enable
the transaction construction phase to be pipelined for a single collection,
but would require correctly handling the case where a more recently
submitted transaction encounters a conflict.

Fixes: https://tracker.ceph.com/issues/51358
Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/seastore: preserve Transaction::handle on reset for writes
Samuel Just [Mon, 28 Jun 2021 21:24:44 +0000 (14:24 -0700)]
crimson/os/seastore/seastore: preserve Transaction::handle on reset for writes

We're going to need to preserve the pipeline phase locking on conflict.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/ordering_handle: fix phase descriptions
Samuel Just [Mon, 28 Jun 2021 23:49:56 +0000 (16:49 -0700)]
crimson/os/seastore/ordering_handle: fix phase descriptions

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/transaction: reorder members, make handle private
Samuel Just [Mon, 28 Jun 2021 21:23:45 +0000 (14:23 -0700)]
crimson/os/seastore/transaction: reorder members, make handle private

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/transaction: remove unused initiated_after
Samuel Just [Mon, 28 Jun 2021 21:22:55 +0000 (14:22 -0700)]
crimson/os/seastore/transaction: remove unused initiated_after

retired_gate_token has this information, Transaction::initiated_after
was left by accident.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/alienstore: use semaphore to manage tasks in thread pool 41976/head
Kefu Chai [Tue, 29 Jun 2021 12:06:49 +0000 (20:06 +0800)]
crimson/os/alienstore: use semaphore to manage tasks in thread pool

* implement std::counting_semaphore in C++17
* use the homebrew counting_semaphore as the synchronization primitive
  to access the pending tasks, for better performance than the
  implementation using mutex and condition_variable.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocephsqlite: add comment on atexit 42101/head
Patrick Donnelly [Tue, 29 Jun 2021 15:01:56 +0000 (08:01 -0700)]
cephsqlite: add comment on atexit

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agocrimson: introduce assert_moveable(). 42100/head
Radoslaw Zarzynski [Mon, 28 Jun 2021 23:52:47 +0000 (23:52 +0000)]
crimson: introduce assert_moveable().

In C++ `std::moving` a `const`-qualified value yields a constant
r-value reference (`const T&&`) which won't be matched with a callable
taking non-constant r-value reference (like move constructors) but
can play with one taking a constant l-value reference (like copy
constructors do). This behaviour is surprising especially in lambas
where adding or removing the `mutable` specifier may lead to different
behaviour. The problem isn't obvious and it's easy to wrongly drop
the `mutable` druing a clean-up. Therefore introducing a tool for
developers to fail at compile-time if that happens seems desired.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agoMerge pull request #42002 from tchaikov/wip-common-armor
Kefu Chai [Tue, 29 Jun 2021 14:54:36 +0000 (22:54 +0800)]
Merge pull request #42002 from tchaikov/wip-common-armor

common/armor: mark dst_end a const pointer

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agoMerge pull request #42035 from batrick/i51372
Kefu Chai [Tue, 29 Jun 2021 14:33:10 +0000 (22:33 +0800)]
Merge pull request #42035 from batrick/i51372

libcephsqlite: shutdown RADOS in destructor

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #42094 from zdover23/wip-doc-upgrading-ceph-monitoring-the-upgrade...
zdover23 [Tue, 29 Jun 2021 14:08:11 +0000 (00:08 +1000)]
Merge pull request #42094 from zdover23/wip-doc-upgrading-ceph-monitoring-the-upgrade-2021-06-29

doc/cephadm: improving "Monitoring the Upgrade"

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
4 years agoMerge pull request #42079 from zdover23/wip-doc-upgrading-ceph-first-section-2021...
zdover23 [Tue, 29 Jun 2021 14:07:28 +0000 (00:07 +1000)]
Merge pull request #42079 from zdover23/wip-doc-upgrading-ceph-first-section-2021-06-29

doc/cephadm: improve "Upgrading Ceph" (main)

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
4 years agodoc/cephadm: improving "Monitoring the Upgrade" 42094/head
Zac Dover [Tue, 29 Jun 2021 12:42:29 +0000 (22:42 +1000)]
doc/cephadm: improving "Monitoring the Upgrade"

This PR improves the section "Monitoring the Upgrade"
in the "Upgrading Ceph" chapter of the cephadm documentation.

This PR introduces a couple of section breaks with signposting
information in their titles, and rewrites some sentences in order
to reduce the cognitive load of the reader.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
4 years agoMerge pull request #42042 from tchaikov/wip-51375
Kefu Chai [Tue, 29 Jun 2021 11:28:19 +0000 (19:28 +0800)]
Merge pull request #42042 from tchaikov/wip-51375

common/options: convert a millisecs opt to a chrono::milliseconds and cleanups

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agocrimson/os/alienstore: return attrs retrieved from bluestore directly 42054/head
Kefu Chai [Tue, 29 Jun 2021 04:01:20 +0000 (12:01 +0800)]
crimson/os/alienstore: return attrs retrieved from bluestore directly

since ObjectStore returns a map<...,less<>> already, there is not point to
convert the returned map to the type expected by AlienStore.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoos: use transparent comparator in ObjectStore::getattrs()
Kefu Chai [Mon, 28 Jun 2021 11:45:57 +0000 (19:45 +0800)]
os: use transparent comparator in ObjectStore::getattrs()

for two reasons:

- better performance when looking on in the return map if the key
  is not a string, as we don't need to create a temporary string
  as the key
- improve the performance of crimson::AlienStore, as the latter
  uses the transparent comparator. as, without this change, we'd
  have to perform a deep copy to fill up the returned map with
  its non-transparent-comparator version.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/os: use lockfree queue for sharded queue
Kefu Chai [Tue, 22 Jun 2021 13:27:32 +0000 (21:27 +0800)]
crimson/os: use lockfree queue for sharded queue

each sharded queue has multiple producers and a single consumer queue,
but the producer side is in seastar world, so ideally, we should not
guard the queue using a POSIX lock.

in this change, the lockfree multiple-writer/multiple-reader queue is
used to replace the std::queue to drop the lock guarding it.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agomgr,mon: s/boost::optional/std::optional/ 42042/head
Kefu Chai [Sun, 27 Jun 2021 04:01:17 +0000 (12:01 +0800)]
mgr,mon: s/boost::optional/std::optional/

since the encoding schemes of boost::optional and std::optional are
identical, they can be used interchangeably.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocommon/config: s/boost::variant/std::variant/
Kefu Chai [Sun, 27 Jun 2021 03:48:24 +0000 (11:48 +0800)]
common/config: s/boost::variant/std::variant/

we should use standard library for more well defined behavior, and
less dependencies on 3rd party libraries.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocommon/options: s/boost::variant/std::variant/
Kefu Chai [Sun, 27 Jun 2021 02:38:39 +0000 (10:38 +0800)]
common/options: s/boost::variant/std::variant/

we should use standard library for more well defined behavior, and
less dependencies on 3rd party libraries.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #42013 from ronen-fr/wip-ronenf-scrubs-config
Kefu Chai [Tue, 29 Jun 2021 08:21:52 +0000 (16:21 +0800)]
Merge pull request #42013 from ronen-fr/wip-ronenf-scrubs-config

qa/suites/rados: add simultaneous scrubs to the thrasher

Reviewed-by: Neha Ojha <nojha@redhat.com>
4 years agoMerge pull request #42031 from sebastian-philipp/normalize_image_digest_local-registry
Kefu Chai [Tue, 29 Jun 2021 08:20:28 +0000 (16:20 +0800)]
Merge pull request #42031 from sebastian-philipp/normalize_image_digest_local-registry

cephadm: Fix normalize_image_digest for local registries

Reviewed-by: Adam King <adking@redhat.com>
4 years agoMerge pull request #41933 from liewegas/fix-48311
Kefu Chai [Tue, 29 Jun 2021 08:18:17 +0000 (16:18 +0800)]
Merge pull request #41933 from liewegas/fix-48311

mgr: set debug_mgr=2/5 (so INFO goes to mgr log by default)

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41999 from tchaikov/wip-rpm-deb
Kefu Chai [Tue, 29 Jun 2021 08:16:32 +0000 (16:16 +0800)]
Merge pull request #41999 from tchaikov/wip-rpm-deb

rpm,debian: cleanups related to python3-setuptools dependencies

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
4 years agoMerge pull request #42076 from liu-chunmei/crimson-pgnls
Kefu Chai [Tue, 29 Jun 2021 07:10:48 +0000 (15:10 +0800)]
Merge pull request #42076 from liu-chunmei/crimson-pgnls

crimson: fix pgnls exception

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoosd/PrimaryLogPG: reorder #includes 42089/head
Kefu Chai [Tue, 29 Jun 2021 06:58:24 +0000 (14:58 +0800)]
osd/PrimaryLogPG: reorder #includes

so the oder of includes complies to https://google.github.io/styleguide/cppguide.html#Names_and_Order_of_Includes

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoosd/PrimaryLogPG: use std::from_chars() to convert str to integer
Kefu Chai [Tue, 29 Jun 2021 06:39:35 +0000 (14:39 +0800)]
osd/PrimaryLogPG: use std::from_chars() to convert str to integer

* no need to create a temporary string for using strtoull()
* use std::from_chars() so it's consistent with its counterpart in
  in crimson.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/osd: check invalid input in do_xattr_cmp_u64()
Kefu Chai [Tue, 29 Jun 2021 06:43:57 +0000 (14:43 +0800)]
crimson/osd: check invalid input in do_xattr_cmp_u64()

we should return -EINVAL if the string does not represent a decimal
integer.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/osd: include used header
Kefu Chai [Tue, 29 Jun 2021 06:41:49 +0000 (14:41 +0800)]
crimson/osd: include used header

for using std::from_chars()

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/osd: extract do_cmp_xattr()
Kefu Chai [Tue, 29 Jun 2021 06:25:21 +0000 (14:25 +0800)]
crimson/osd: extract do_cmp_xattr()

to consolidate the logic to dispatch by op.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoosd: extract do_cmp_xattr()
Kefu Chai [Tue, 29 Jun 2021 06:15:57 +0000 (14:15 +0800)]
osd: extract do_cmp_xattr()

to consolidate the logic to dispatch by op.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #42039 from liu-chunmei/crimson-cmpxattr
Kefu Chai [Tue, 29 Jun 2021 06:09:15 +0000 (14:09 +0800)]
Merge pull request #42039 from liu-chunmei/crimson-cmpxattr

crimson: add cmp_xatt support

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agocommon/buffers: check _num directly in list::c_str() 42087/head
Kefu Chai [Tue, 29 Jun 2021 05:52:04 +0000 (13:52 +0800)]
common/buffers: check _num directly in list::c_str()

no need to create temporary iterator for comparing it with cend().

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson: fix pgnls exception 42076/head
chunmei-liu [Tue, 29 Jun 2021 05:20:55 +0000 (22:20 -0700)]
crimson: fix pgnls exception

has_pg_op is always false, since m->ops is empty at that time.
so pgnls operation will go to process_op and report unknown operations.
move m->finish_decode ahead to fill m->ops.

Signed-off-by: chunmei-liu <chunmei.liu@intel.com>
4 years agoqa: run e2e test on centos only 42084/head
Kefu Chai [Tue, 29 Jun 2021 05:08:10 +0000 (13:08 +0800)]
qa: run e2e test on centos only

it's a regression introduced by the restrcuture of the test suites,
let's pin the test to CentOS8.

See-also: https://tracker.ceph.com/issues/49638
Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson: add cmp_xatt support 42039/head
chunmei-liu [Sat, 26 Jun 2021 05:06:54 +0000 (22:06 -0700)]
crimson: add cmp_xatt support

fix Exceptional future ignored: std::runtime_error (op 'cmpxattr' not supported)

Signed-off-by: chunmei-liu <chunmei.liu@intel.com>
4 years agocommon: Use double instead of long double to improve performance 42082/head
Chunsong Feng [Tue, 29 Jun 2021 03:26:07 +0000 (03:26 +0000)]
common: Use double instead of long double to improve performance

To convert namoseconds to seconds, the precision needs to be 10,
and the precision of double is 15, which is enough to use.
On aarch64, double division uses the div instruction, while long
double uses the gcc buildin _divtf3, which has poor performance.
Therefore, use double instead of long double for better performance.

Signed-off-by: Chunsong Feng <fengchunsong@huawei.com>