]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
Zac Dover [Tue, 29 Jun 2021 01:29:33 +0000 (11:29 +1000)]
doc/cephadm: improve "Upgrading Ceph" (main)
This PR makes a couple of minor improvements to the text under the
top-level section "Upgrading Ceph" in the "Upgrading Ceph" chapter of
the cephadm documentation.
This one, mercifully, contains only a couple of changes.
Signed-off-by: Zac Dover <zac.dover@gmail.com>
Patrick Donnelly [Mon, 28 Jun 2021 18:57:22 +0000 (11:57 -0700)]
Merge PR #42011 into master
* refs/pull/42011/head:
mds: just respawn mds daemon when osd op requests timeout
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Mon, 28 Jun 2021 18:55:23 +0000 (11:55 -0700)]
Merge PR #41988 into master
* refs/pull/41988/head:
logrotate: include cephfs-mirror daemon
cephfs-mirror: reopen logs on SIGHUP
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Mon, 28 Jun 2021 18:52:46 +0000 (11:52 -0700)]
Merge PR #41917 into master
* refs/pull/41917/head:
mgr/mgr_util: switch using unshared cephfs connections whenever possible
Reviewed-by: Ramana Raja <rraja@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Kotresh Hiremath Ravishankar <khiremat@redhat.com>
Patrick Donnelly [Mon, 28 Jun 2021 18:50:22 +0000 (11:50 -0700)]
Merge PR #41849 into master
* refs/pull/41849/head:
mds: try to flush the mdlog when requesting the rdlock
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Mon, 28 Jun 2021 16:48:59 +0000 (09:48 -0700)]
Merge PR #42038 into master
* refs/pull/42038/head:
mds: fix compile warning
Reviewed-by: Kefu Chai <kchai@redhat.com>
zdover23 [Mon, 28 Jun 2021 15:16:49 +0000 (01:16 +1000)]
Merge pull request #42049 from zdover23/wip-doc-cephadm-serve-man-disable-auto-deploy-of-daemons
doc/cephadm: enrich "Disabling Automatic Deploy..."
Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
Ali Maredia [Mon, 28 Jun 2021 14:15:12 +0000 (10:15 -0400)]
Merge pull request #41681 from TRYTOBE8TME/wip-rgw-dpp
src/rgw: DPP addition
Reviewed-by: Ali Maredia <amaredia@redhat.com>
Kefu Chai [Mon, 28 Jun 2021 12:33:38 +0000 (20:33 +0800)]
Merge pull request #42050 from rzarzynski/wip-crimson-alienstore-fix-attrs-conv
crimson/os: fix memory corruption in AlienStore::get_attrs().
Reviewed-by: Kefu Chai <kchai@redhat.com>
Radoslaw Zarzynski [Sun, 27 Jun 2021 21:50:37 +0000 (21:50 +0000)]
crimson/os: fix memory corruption in AlienStore::get_attrs().
`FuturizedStore` and `ObjectStore` use different memory layout for
conveying object attributes: map of `bufferlists` and map of `bptrs`
respectively. Unfortunately, `AlienStore` was trying to solve this
mismatch with just a `reinterpret_cast`.
Very likely this problem was the root cause behind the observed
crashes in `PGBackend::load_matadata` like the following one:
```
2021-06-15T09:25:07.511 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: DEBUG 2021-06-15 09:24:19,199 [shard 0] osd - peering_event(id=412, detail=PeeringEvent(from=7 pgid=5.14 sent=49 requested=49 evt=epoch_sent: 49 epoch_requested: 49 MInfoRec from 7 info: 5.14( v 45'2 (0'0,45'2] local-lis/les=48/49 n=0 ec=44/44 lis/c=48/44 les/c/f=49/45/0 sis=48) pg_lease_ack(ruub 19.176788330s))): complete
2021-06-15T09:25:07.511 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: Segmentation fault on shard 0.
2021-06-15T09:25:07.511 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: Backtrace:
2021-06-15T09:25:07.511 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 0# 0x000055C99757FFBF in /usr/bin/ceph-osd
2021-06-15T09:25:07.511 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 1# FatalSignal::signaled(int, siginfo_t const*) in /usr/bin/ceph-osd
2021-06-15T09:25:07.511 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 2# FatalSignal::install_oneshot_signal_handler<11>()::{lambda(int, siginfo_t*, void*)#1}::_FUN(int, siginfo_t*, void*) in /usr/bin/ceph-osd
2021-06-15T09:25:07.512 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 3# 0x00007F34BB632B20 in /lib64/libpthread.so.0
2021-06-15T09:25:07.512 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 4# 0x000055C99263D4D2 in /usr/bin/ceph-osd
2021-06-15T09:25:07.512 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 5# 0x000055C992740E47 in /usr/bin/ceph-osd
2021-06-15T09:25:07.512 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 6# seastar::continuation<seastar::internal::promise_base_with_type<std::unique_ptr<PGBackend::loaded_object_md_t, std::default_delete<PGBackend::loaded_object_md_t> > >, seastar::noncopyable_function<crimson::errorator<crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)84> > >::_future<crimson::errorated_future_marker<std::unique_ptr<PGBackend::loaded_object_md_t, std::default_delete<PGBackend::loaded_object_md_t> > > > (seastar::future<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<void>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > >&&)>, seastar::future<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<void>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > >::then_wrapped_nrvo<crimson::errorator<crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)84> > >::_future<crimson::errorated_future_marker<std::unique_ptr<PGBackend::loaded_object_md_t, std::default_delete<PGBackend::loaded_object_md_t> > > >, seastar::noncopyable_function<crimson::errorator<crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)84> > >::_future<crimson::errorated_future_marker<std::unique_ptr<PGBackend::loaded_object_md_t, std::default_delete<PGBackend::loaded_object_md_t> > > > (seastar::future<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<void>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > >&&)> >(seastar::noncopyable_function<crimson::errorator<crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)84> > >::_future<crimson::errorated_future_marker<std::unique_ptr<PGBackend::loaded_object_md_t, std::default_delete<PGBackend::loaded_object_md_t> > > > (seastar::future<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<void>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > >&&)>&&)::{lambda(seastar::internal::promise_base_with_type<std::unique_ptr<PGBackend::loaded_object_md_t, std::default_delete<PGBackend::loaded_object_md_t> > >&&, seastar::noncopyable_function<crimson::errorator<crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)84> > >::_future<crimson::errorated_future_marker<std::unique_ptr<PGBackend::loaded_object_md_t, std::default_delete<PGBackend::loaded_object_md_t> > > > (seastar::future<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<void>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > >&&)>&, seastar::future_state<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<void>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > >&&)#1}, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, std::less<void>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > > >::run_and_dispose() in /usr/bin/ceph-osd
2021-06-15T09:25:07.512 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 7# 0x000055C99CFD195F in /usr/bin/ceph-osd
2021-06-15T09:25:07.513 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 8# 0x000055C99CFD6EA0 in /usr/bin/ceph-osd
2021-06-15T09:25:07.513 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 9# 0x000055C99D188F0B in /usr/bin/ceph-osd
2021-06-15T09:25:07.513 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 10# 0x000055C99CCE698A in /usr/bin/ceph-osd
2021-06-15T09:25:07.513 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 11# 0x000055C99CCF0AAE in /usr/bin/ceph-osd
2021-06-15T09:25:07.513 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 12# main in /usr/bin/ceph-osd
2021-06-15T09:25:07.513 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 13# __libc_start_main in /lib64/libc.so.6
2021-06-15T09:25:07.514 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: 14# _start in /usr/bin/ceph-osd
2021-06-15T09:25:07.514 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:19 smithi100 conmon[54917]: Fault at location: 0x31dfff8000
2021-06-15T09:25:07.514 INFO:journalctl@ceph.osd.3.smithi100.stdout:Jun 15 09:24:20 smithi100 podman[55356]: 2021-06-15 09:24:20.
230341885 +0000 UTC m=+0.
072958807 container died
a3ea2a1d0a176286b93b8f5b94458982b9038e70d09128fb55f53b92976f0c42 (image=quay.ceph.io/ceph-ci/ceph@sha256:
13ae953e3f83ee011d784d6eb9126fdc692f5bb688fe7d918be61ca7a7282b3c , name=ceph-
43579b90 -cdba-11eb-8c13-
001a4aab830c -osd.3)
```
The fix deals with the issue by wrapping the `bptrs` in `bufferlists`.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Sebastian Wagner [Mon, 28 Jun 2021 09:46:34 +0000 (11:46 +0200)]
Merge pull request #41989 from zdover23/wip-doc-cephadm-serve-man-deploy-of-daemons-2021-06-24
doc/cephadm: enrich "deployment of daemons"
Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
Zac Dover [Mon, 28 Jun 2021 09:17:43 +0000 (19:17 +1000)]
doc/cephadm: enrich "Disabling Automatic Deploy..."
This PR rewrites and reformats the section "Disabling Automatic
Deployment of Daemons" in the "Service Management" chapter of the
cephadm guide.
I've rewritten some sentences, removed some "please"s, and added
some section titles so that the content in this is better
signposted.
Signed-off-by: Zac Dover <zac.dover@gmail.com>
Pritha Srivastava [Tue, 27 Oct 2020 17:12:52 +0000 (22:42 +0530)]
rgw/sts: fix for copy object operation using sts
temporary credentials
Fixes: https://tracker.ceph.com/issues/47809
Signed-off-by: Pritha Srivastava <prsrivas@redhat.com>