]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
5 years agoMerge pull request #32690 from rosinL/wip-timeevent
Kefu Chai [Fri, 14 Feb 2020 07:41:07 +0000 (15:41 +0800)]
Merge pull request #32690 from rosinL/wip-timeevent

msg/async/dpdk: destroy fd in do_request

Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge pull request #33084 from tchaikov/wip-crimson-pg-coll
Kefu Chai [Fri, 14 Feb 2020 03:21:52 +0000 (11:21 +0800)]
Merge pull request #33084 from tchaikov/wip-crimson-pg-coll

crimson/os: init PG with pg coll not meta coll

Reviewed-by: Samuel Just <sjust@redhat.com>
5 years agoMerge pull request #33241 from nagpavan-chilakam/patch-1
Kefu Chai [Fri, 14 Feb 2020 03:04:47 +0000 (11:04 +0800)]
Merge pull request #33241 from nagpavan-chilakam/patch-1

doc/architecture.rst: fix a typo in EC section

Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge PR #33194 into master
Patrick Donnelly [Thu, 13 Feb 2020 23:21:30 +0000 (15:21 -0800)]
Merge PR #33194 into master

* refs/pull/33194/head:
qa: add tests for mds_join_fs cluster affinity
qa: update cluster warning message for removed MDS
doc: add section on new mds_join_fs behavior
mon/MDSMonitor: enforce mds_join_fs cluster affinity
mon/MDSMonitor: use type of info.rank or mds_rank_t
qa: accept operation on current fs status
qa: add method to enable multifs
qa: fix nested generator use
qa: manage config changes through mons

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge PR #33244 into master
Sage Weil [Thu, 13 Feb 2020 22:41:26 +0000 (16:41 -0600)]
Merge PR #33244 into master

* refs/pull/33244/head:
doc/mgr/orchestrator_modules: update docs
mgr/orch: break out apply_$type() in orchestrator.py interface
qa/tasks/cephadm: adapt to new cli
mgr/orch: add --force arg to 'daemon rm'
mgr/orch: fix host set-addr prefix
mgr/orch: service action cleanup
mgr/orch: prevent rm mon|mgr
mgr/orch: service rm -> rm
mgr/cephadm: add mon
mgr/orch: add mon hook
mgr/cephadm: add mgr
mgr/orch: add 'daemon add mgr'
mgr/orch: orch * add -> orch daemon add *
mgr/volumes: use apply_mds
mgr/orch: move to service_apply; remove update_foo()
mgr/rook: move to remove_service()
mgr/orch: remove old remove_{osds,rgw,mds,nfs,...} methods
mgr/orch: test remove_daemons and remove_service

Reviewed-by: Sebastian Wagner <swagner@suse.com>
5 years agoMerge pull request #30862 from zhangsw/fix-rgw-lc-repeated
J. Eric Ivancich [Thu, 13 Feb 2020 19:19:31 +0000 (14:19 -0500)]
Merge pull request #30862 from zhangsw/fix-rgw-lc-repeated

rgw: set bucket attr twice when delete lifecycle config.

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
Reviewed-By: Abhishek Lekshmanan <abhishek@suse.com>
5 years agoMerge PR #33248 into master
Sage Weil [Thu, 13 Feb 2020 19:19:00 +0000 (13:19 -0600)]
Merge PR #33248 into master

* refs/pull/33248/head:
cephadm: fix deploy crash when no `args.fsid`

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Sebastian Wagner <swagner@suse.com>
5 years agoMerge pull request #31088 from joke-lee/rgw-storage-class-apend-obj
J. Eric Ivancich [Thu, 13 Feb 2020 19:17:26 +0000 (14:17 -0500)]
Merge pull request #31088 from joke-lee/rgw-storage-class-apend-obj

rgw: set correct storage class for append

Reviewed-By: Casey Bodley <cbodley@redhat.com>
5 years agoMerge pull request #31661 from joke-lee/sts-args
J. Eric Ivancich [Thu, 13 Feb 2020 19:16:21 +0000 (14:16 -0500)]
Merge pull request #31661 from joke-lee/sts-args

rgw: sts: add all http args to req_info

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-By: Abhishek Lekshmanan <abhishek@suse.com>
5 years agoMerge pull request #33053 from tpsilva/add_max_connections
J. Eric Ivancich [Thu, 13 Feb 2020 19:13:53 +0000 (14:13 -0500)]
Merge pull request #33053 from tpsilva/add_max_connections

rgw: make max_connections configurable in beast

Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge pull request #33165 from clwluvw/policy-subuser
J. Eric Ivancich [Thu, 13 Feb 2020 19:11:00 +0000 (14:11 -0500)]
Merge pull request #33165 from clwluvw/policy-subuser

rgw: Add support bucket policy for subuser

Reviewed-By: Adam Emersen <aemerson@redhat.com>
5 years agoMerge pull request #32636 from ivancich/wip-avoid-0-length-ordered-list-result
J. Eric Ivancich [Thu, 13 Feb 2020 19:04:05 +0000 (14:04 -0500)]
Merge pull request #32636 from ivancich/wip-avoid-0-length-ordered-list-result

rgw: address 0-length listing results when non-vis entries dominate

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
5 years agoMerge pull request #32805 from smithfarm/wip-cmake-logging
Nathan Cutler [Thu, 13 Feb 2020 19:00:27 +0000 (20:00 +0100)]
Merge pull request #32805 from smithfarm/wip-cmake-logging

rpm: add cmake_verbose_logging switch

Reviewed-by: David Disseldorp <ddiss@suse.com>
Reviewed-by: Jan Fajerski <jfajerski@suse.com>
5 years agoMerge PR #29427 into master
Sage Weil [Thu, 13 Feb 2020 16:26:08 +0000 (10:26 -0600)]
Merge PR #29427 into master

* refs/pull/29427/head:
mgr/rook: Make use of rook-client-python when talking to Rook
cmake: Integrate Rook client generation
mgr/rook: Automatically generate Rook client interface
Add submodule to rook-client-python.git

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Juan Miguel Olmo <jolmomar@redhat.com>
5 years agoqa: add tests for mds_join_fs cluster affinity 33194/head
Patrick Donnelly [Tue, 11 Feb 2020 03:24:20 +0000 (19:24 -0800)]
qa: add tests for mds_join_fs cluster affinity

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoqa: update cluster warning message for removed MDS
Patrick Donnelly [Tue, 11 Feb 2020 21:20:37 +0000 (13:20 -0800)]
qa: update cluster warning message for removed MDS

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agodoc: add section on new mds_join_fs behavior
Patrick Donnelly [Tue, 11 Feb 2020 04:02:29 +0000 (20:02 -0800)]
doc: add section on new mds_join_fs behavior

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agomon/MDSMonitor: enforce mds_join_fs cluster affinity
Patrick Donnelly [Tue, 11 Feb 2020 03:20:08 +0000 (19:20 -0800)]
mon/MDSMonitor: enforce mds_join_fs cluster affinity

Before this, "mds_join_fs" config enforced a preference for the standby
the monitors would select. Now the monitors actively enforce this
by purposefully removing an MDS wither lower "affinity". An MDS standby
has highest affinity if its mds_join_fs is the file system in question
or a vanilla standby (no mds_join_fs).

Fixes: https://tracker.ceph.com/issues/43392
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agomon/MDSMonitor: use type of info.rank or mds_rank_t
Patrick Donnelly [Sat, 18 Jan 2020 03:49:05 +0000 (19:49 -0800)]
mon/MDSMonitor: use type of info.rank or mds_rank_t

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoqa: accept operation on current fs status
Patrick Donnelly [Tue, 11 Feb 2020 03:23:56 +0000 (19:23 -0800)]
qa: accept operation on current fs status

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoqa: add method to enable multifs
Patrick Donnelly [Tue, 11 Feb 2020 03:23:43 +0000 (19:23 -0800)]
qa: add method to enable multifs

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoqa: fix nested generator use
Patrick Donnelly [Tue, 11 Feb 2020 21:37:53 +0000 (13:37 -0800)]
qa: fix nested generator use

Apparently Python doesn't allow nested generator calls. Hurray.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoqa: manage config changes through mons
Patrick Donnelly [Mon, 10 Feb 2020 18:46:09 +0000 (10:46 -0800)]
qa: manage config changes through mons

This provides a generic framework for modifying Ceph configuration
changes in tests through the monitors rather than the asok interface or
local ceph.conf changes. Any changes are reverted during test teardown.

A future patch will convert existing tests manipulating the local
ceph.conf or admin socket.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agodoc/mgr/orchestrator_modules: update docs 33244/head
Sage Weil [Thu, 13 Feb 2020 14:24:31 +0000 (08:24 -0600)]
doc/mgr/orchestrator_modules: update docs

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orch: break out apply_$type() in orchestrator.py interface
Sage Weil [Thu, 13 Feb 2020 14:17:58 +0000 (08:17 -0600)]
mgr/orch: break out apply_$type() in orchestrator.py interface

Also clean up the method descriptions.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoqa/tasks/cephadm: adapt to new cli
Sage Weil [Thu, 13 Feb 2020 02:35:56 +0000 (20:35 -0600)]
qa/tasks/cephadm: adapt to new cli

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orch: add --force arg to 'daemon rm'
Sage Weil [Wed, 12 Feb 2020 21:59:05 +0000 (15:59 -0600)]
mgr/orch: add --force arg to 'daemon rm'

This is needed when removing mons.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orch: fix host set-addr prefix
Sage Weil [Wed, 12 Feb 2020 21:51:52 +0000 (15:51 -0600)]
mgr/orch: fix host set-addr prefix

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orch: service action cleanup
Sage Weil [Wed, 12 Feb 2020 21:51:19 +0000 (15:51 -0600)]
mgr/orch: service action cleanup

- no 'service' prefix
- single name arg (type[.id...])

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orch: prevent rm mon|mgr
Sage Weil [Wed, 12 Feb 2020 21:48:13 +0000 (15:48 -0600)]
mgr/orch: prevent rm mon|mgr

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orch: service rm -> rm
Sage Weil [Wed, 12 Feb 2020 21:47:36 +0000 (15:47 -0600)]
mgr/orch: service rm -> rm

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/cephadm: add mon
Sage Weil [Wed, 12 Feb 2020 21:46:35 +0000 (15:46 -0600)]
mgr/cephadm: add mon

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orch: add mon hook
Sage Weil [Wed, 12 Feb 2020 21:05:29 +0000 (15:05 -0600)]
mgr/orch: add mon hook

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/cephadm: add mgr
Sage Weil [Wed, 12 Feb 2020 20:56:53 +0000 (14:56 -0600)]
mgr/cephadm: add mgr

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orch: add 'daemon add mgr'
Sage Weil [Wed, 12 Feb 2020 20:56:44 +0000 (14:56 -0600)]
mgr/orch: add 'daemon add mgr'

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orch: orch * add -> orch daemon add *
Sage Weil [Wed, 12 Feb 2020 20:39:02 +0000 (14:39 -0600)]
mgr/orch: orch * add -> orch daemon add *

Adjust help string too

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/volumes: use apply_mds
Sage Weil [Tue, 11 Feb 2020 23:52:38 +0000 (17:52 -0600)]
mgr/volumes: use apply_mds

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge pull request #32609 from joke-lee/rgw-website-43563
Ali Maredia [Thu, 13 Feb 2020 15:30:35 +0000 (10:30 -0500)]
Merge pull request #32609 from joke-lee/rgw-website-43563

rgw: ReplaceKeyPrefixWith and ReplaceKeyWith can not set at the same …

5 years agoMerge pull request #33247 from tchaikov/wip-cmake-cleanup
Kefu Chai [Thu, 13 Feb 2020 15:06:19 +0000 (23:06 +0800)]
Merge pull request #33247 from tchaikov/wip-cmake-cleanup

cmake: do not link against unused libs

Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agomgr/orch: move to service_apply; remove update_foo()
Sage Weil [Tue, 11 Feb 2020 22:42:08 +0000 (16:42 -0600)]
mgr/orch: move to service_apply; remove update_foo()

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge pull request #33219 from dillaman/wip-44066-2
Mykola Golub [Thu, 13 Feb 2020 14:20:52 +0000 (16:20 +0200)]
Merge pull request #33219 from dillaman/wip-44066-2

rbd: fixed additional issues with CEPH_ARGS processing

Reviewed-by: Mykola Golub <mgolub@suse.com>
5 years agorpm: add cmake_verbose_logging switch 32805/head
Nathan Cutler [Thu, 23 Jan 2020 09:59:03 +0000 (10:59 +0100)]
rpm: add cmake_verbose_logging switch

This switch sets CMAKE_VERBOSE_MAKEFILE and causes the CMakeOutput.log
and CMakeError.log files to be dumped after cmake execution finishes.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agoMerge pull request #33182 from smithfarm/wip-cbs-basic-auth
Nathan Cutler [Thu, 13 Feb 2020 13:43:56 +0000 (14:43 +0100)]
Merge pull request #33182 from smithfarm/wip-cbs-basic-auth

ceph-backport.sh: use Basic Authentication instead of access_token

Reviewed-by: Jan Fajerski <jfajerski@suse.com>
5 years agomgr/rook: move to remove_service()
Sage Weil [Tue, 11 Feb 2020 20:47:11 +0000 (14:47 -0600)]
mgr/rook: move to remove_service()

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orch: remove old remove_{osds,rgw,mds,nfs,...} methods
Sage Weil [Tue, 11 Feb 2020 16:41:03 +0000 (10:41 -0600)]
mgr/orch: remove old remove_{osds,rgw,mds,nfs,...} methods

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orch: test remove_daemons and remove_service
Sage Weil [Tue, 11 Feb 2020 16:40:46 +0000 (10:40 -0600)]
mgr/orch: test remove_daemons and remove_service

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge pull request #33173 from smithfarm/wip-bri-basic-auth
Nathan Cutler [Thu, 13 Feb 2020 13:00:58 +0000 (14:00 +0100)]
Merge pull request #33173 from smithfarm/wip-bri-basic-auth

backport-resolve-issue: use Basic Authentication instead of "access_token"

Reviewed-by: Jan Fajerski <jfajerski@suse.com>
5 years agoMerge pull request #33105 from smithfarm/wip-44014
Nathan Cutler [Thu, 13 Feb 2020 13:00:00 +0000 (14:00 +0100)]
Merge pull request #33105 from smithfarm/wip-44014

backport-resolve-issue: populate tracker_description method

Reviewed-by: Jan Fajerski <jfajerski@suse.com>
5 years agodoc/architecture.rst: fix a typo in EC section 33241/head
nagpavan-chilakam [Wed, 12 Feb 2020 12:13:51 +0000 (17:43 +0530)]
doc/architecture.rst: fix a typo in EC section

In erasure coding section under Architecture, there is a mention of k = 2 + M =1 for
number of data copies and redundancy copies respectively, which is a bit ambiguous.
The proposal is to change to k = 2, M = 1 as the + sign is not needed here.

Signed-off-by: Nag Pavan Chilakam <nagpavan.chilakam@gmail.com>
5 years agoMerge pull request #32693 from CongMinYin/update-pmdk-version
Kefu Chai [Thu, 13 Feb 2020 11:24:05 +0000 (19:24 +0800)]
Merge pull request #32693 from CongMinYin/update-pmdk-version

cmake: Update pmdk version to 1.7

Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agocmake: Update pmdk version to 1.7 32693/head
Yin Congmin [Fri, 17 Jan 2020 15:51:18 +0000 (23:51 +0800)]
cmake: Update pmdk version to 1.7

nvml is renamed to pmdk and upgrading to 1.7 to fix gcc9 build issue

Signed-off-by: Yin, Congmin <congmin.yin@intel.com>
5 years agomgr/rook: Make use of rook-client-python when talking to Rook 29427/head
Sebastian Wagner [Mon, 13 Jan 2020 12:01:20 +0000 (13:01 +0100)]
mgr/rook: Make use of rook-client-python when talking to Rook

Fixes:

* `CephFilesystem.spec.onlyManageDaemons` does not exist
* `CephObjectStroe.spec.gateway.allNodes` does not exist
* Added directory-osds to existsing nodes was broken

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
5 years agocmake: Integrate Rook client generation
Sebastian Wagner [Mon, 13 Jan 2020 12:00:41 +0000 (13:00 +0100)]
cmake: Integrate Rook client generation

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
5 years agomgr/rook: Automatically generate Rook client interface
Sebastian Wagner [Mon, 13 Jan 2020 11:58:32 +0000 (12:58 +0100)]
mgr/rook: Automatically generate Rook client interface

using the official Rook client Python library.

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
5 years agoAdd submodule to rook-client-python.git
Sebastian Wagner [Tue, 11 Feb 2020 15:56:44 +0000 (16:56 +0100)]
Add submodule to rook-client-python.git

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
5 years agoMerge pull request #33236 from sebastian-philipp/python-common-py.typed
Sebastian Wagner [Thu, 13 Feb 2020 10:32:46 +0000 (11:32 +0100)]
Merge pull request #33236 from sebastian-philipp/python-common-py.typed

python-common: add py.typed (PEP 561)

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agoMerge pull request #33212 from liewegas/wip-orch-newcli
Sebastian Wagner [Thu, 13 Feb 2020 10:31:37 +0000 (11:31 +0100)]
Merge pull request #33212 from liewegas/wip-orch-newcli

mgr/orch: first phase of new cli

Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
5 years agoMerge pull request #33250 from tchaikov/wip-seastar
Kefu Chai [Thu, 13 Feb 2020 10:08:52 +0000 (18:08 +0800)]
Merge pull request #33250 from tchaikov/wip-seastar

crimson: pickup change to fix --cpuset support and cleanups

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
5 years agoMerge pull request #32647 from optimistyzy/115
Kefu Chai [Thu, 13 Feb 2020 07:35:19 +0000 (15:35 +0800)]
Merge pull request #32647 from optimistyzy/115

NVMEDevice: Split the read I/O if the io size is large.

Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge pull request #33246 from jan--f/c-v-batch-fix-has_common_vg
Jan Fajerski [Thu, 13 Feb 2020 07:00:47 +0000 (08:00 +0100)]
Merge pull request #33246 from jan--f/c-v-batch-fix-has_common_vg

ceph-volume: use get_device_vgs in has_common_vg

5 years agoMerge pull request #33223 from dsavineau/issue_44069
Jan Fajerski [Thu, 13 Feb 2020 07:00:30 +0000 (08:00 +0100)]
Merge pull request #33223 from dsavineau/issue_44069

ceph-volume: fix is_ceph_device for lvm batch

5 years agocmake: disable -Wnon-virtual-dtor when compiling seastar 33250/head
Kefu Chai [Thu, 13 Feb 2020 04:32:00 +0000 (12:32 +0800)]
cmake: disable -Wnon-virtual-dtor when compiling seastar

quite a few base classes with virtual functions mark their destructor
non-virtual and `protected` for better performance, as seastar destruct
them via the concrete type of the instance.

so let's disable this warning. but, please note, this newly added
CXX_FLAG in `Seastar_CXX_FLAGS` won't be populated to crimson, as it is
only added to the CXX_FLAGS used for compiling seastar itself. so we still
have `-Wnon-virtual-dtor` warnings when compiling crimson as long as seastar
headers are included.

so to silence these warnings, we need to add it also to `crimson::cflags`,
probably it's worth trading the noise caused by seastar's optimizations
with the potentially useful warning messages caused by our oversights.
in my case, there are over 300 lines of warnings split by GCC-10, so i
still think it'd be better to add it also to crimson to increase the
signal-to-noise ratio. we can aways remove it every once in a while to
check if we forget to mark the destructor of a base class `virtual`.

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agocrimson/thread: s/Condition/seastar::readable_eventfd/
Kefu Chai [Thu, 13 Feb 2020 04:27:29 +0000 (12:27 +0800)]
crimson/thread: s/Condition/seastar::readable_eventfd/

in the latest version of seastar, we are not able to construct a
`seastar::pollable_fd_state` directly, as its constructor is now
`protected`, and only the reactor is able to create an instance of
`seastar::pollable_fd_state` now.

and `seastar::readable_eventfd` offers all we need to get notified
by reactor in an alien world. so let's used it instead.

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agoseastar: pickup change to fix --cpuset support
Kefu Chai [Thu, 13 Feb 2020 04:47:17 +0000 (12:47 +0800)]
seastar: pickup change to fix --cpuset support

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agorgw: clean up address 0-length listing results... 32636/head
J. Eric Ivancich [Fri, 10 Jan 2020 19:12:35 +0000 (14:12 -0500)]
rgw: clean up address 0-length listing results...

Some minor clean-ups to the previous commit, including adjust logging
messages, rename variable, convert a #define to a constexpr (and
adjust its scope).

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
5 years agorgw: address 0-length listing results when non-vis entries dominate
J. Eric Ivancich [Thu, 13 Feb 2020 01:38:44 +0000 (20:38 -0500)]
rgw: address 0-length listing results when non-vis entries dominate

A change to advance the marker in RGWRados::cls_bucket_list_ordered to
the last entry visited rather than the final entry in list to push
progress as far as possible.

Since non-vis entries tend to cluster on the same shard, such as
during incomplete multipart uploads, this can severely limit the
number of entries returned by a call to
RGWRados::cls_bucket_list_ordered since once that shard has provided
all its members, we must stop. This interacts with a recent
optimization to reduce the number of entries requested from each
shard. To address this the number of attempts is sent as a parameter,
so the number of entries requested from each shard can grow with each
attempt. Currently the growth is linear but perhaps exponential growth
(capped at number of entries requested) should be considered.

Previously RGWRados::Bucket::List::list_objects_ordered was capped at
2 attempts, but now we keep attempting to insure we make forward
progress and return entries when some exist. If we fail to make
forward progress, we log the error condition and stop looping.

Additional logging, mostly at level 20, is added to the two key
functions involved in ordered bucket listing to make it easier to
follow the logic and address potential future issues that might arise.

Additionally modify attempt number based on how many results were
received.

Change the per-shard request number, so it grows exponentially rather
than linearly as the attempts go up.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
5 years agorbd-mirror: prevent asok commands from dereferencing uninitialized members 33219/head
Jason Dillaman [Wed, 12 Feb 2020 02:59:41 +0000 (21:59 -0500)]
rbd-mirror: prevent asok commands from dereferencing uninitialized members

If rbd-mirror fails to connect to the remote cluster, there is a window of time
where the asok commands might attempt to dereference the default namespace
replayer or access invalid librados IoCtxs.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
5 years agorbd: don't treat failure to gather mirror service daemons as a failure
Jason Dillaman [Tue, 11 Feb 2020 19:16:52 +0000 (14:16 -0500)]
rbd: don't treat failure to gather mirror service daemons as a failure

The only negative result is that instance ids cannot be cross-referenced
to the matching rbd-mirror daemon service.

Fixes: https://tracker.ceph.com/issues/44066
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
5 years agoqa/workunits/rbd: added mgr 'profile rbd' caps to mirror user
Jason Dillaman [Thu, 13 Feb 2020 01:22:30 +0000 (20:22 -0500)]
qa/workunits/rbd: added mgr 'profile rbd' caps to mirror user

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
5 years agoqa/workunits/rbd: additional overrides for CEPH_ARGS
Jason Dillaman [Tue, 11 Feb 2020 19:15:28 +0000 (14:15 -0500)]
qa/workunits/rbd: additional overrides for CEPH_ARGS

The 'ceph' CLI and 'rbd mirror pool/image status' commandsshould revert
to use the admin user so that it has proper credentials for the cluster.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge PR #33216 into master
Sage Weil [Thu, 13 Feb 2020 01:09:05 +0000 (19:09 -0600)]
Merge PR #33216 into master

* refs/pull/33216/head:
cephadm: avoid trigger old podman bug
qa/workunits/cephadm/test_cephadm.sh: wait longer for grafana

Reviewed-by: Michael Fritch <mfritch@suse.com>
5 years agocephadm: avoid trigger old podman bug 33216/head
Sage Weil [Wed, 12 Feb 2020 16:56:22 +0000 (10:56 -0600)]
cephadm: avoid trigger old podman bug

This ticket seems to suggest that (1) the root cause is related to an
exec that is orphaned and screws up the container state (due to, e.g., ssh
dropping, or a timeout), (2) -f may be needed, sometimes, to recover, and
(3) newer versions fix it.

  https://github.com/containers/libpod/issues/3226

Way back in 26f9fe54cb635cbcd8f74849d6fa3528cdf5d755 we found that using
-f the first time around was a Bad Idea, so we'd rather avoid this.

Instead, just avoid triggering the bug.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoqa/workunits/cephadm/test_cephadm.sh: wait longer for grafana
Sage Weil [Tue, 11 Feb 2020 23:23:33 +0000 (17:23 -0600)]
qa/workunits/cephadm/test_cephadm.sh: wait longer for grafana

Sometimes it is very slow to start (only on 18.04, strangely?).

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge pull request #32562 from IlsooByun/fix_dm
J. Eric Ivancich [Wed, 12 Feb 2020 19:47:44 +0000 (14:47 -0500)]
Merge pull request #32562 from IlsooByun/fix_dm

rgw: do not remove delete marker when fixing versioned bucket

5 years agoMerge pull request #30611 from ivancich/wip-make-reshard-status-enum-class
J. Eric Ivancich [Wed, 12 Feb 2020 19:46:23 +0000 (14:46 -0500)]
Merge pull request #30611 from ivancich/wip-make-reshard-status-enum-class

rgw: change cls rgw reshard status to enum class

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-By: Abhishek Lekshmanan <abhishek@suse.com>
5 years agocephadm: fix deploy crash when no `args.fsid` 33248/head
Michael Fritch [Wed, 12 Feb 2020 18:36:35 +0000 (11:36 -0700)]
cephadm: fix deploy crash when no `args.fsid`

broken by 724199dd873e2a02f67ea2e191093d8080c686a7 when the
crash agent was made to behave like all other services

Signed-off-by: Michael Fritch <mfritch@suse.com>
5 years agomgr/orch: add 'orch service rm' 33212/head
Sage Weil [Tue, 11 Feb 2020 16:21:00 +0000 (10:21 -0600)]
mgr/orch: add 'orch service rm'

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orch,cephadm: orch daemon rm ...
Sage Weil [Tue, 11 Feb 2020 16:11:01 +0000 (10:11 -0600)]
mgr/orch,cephadm: orch daemon rm ...

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orch: service ls -> ps, add DaemonDescription
Sage Weil [Tue, 11 Feb 2020 16:01:33 +0000 (10:01 -0600)]
mgr/orch: service ls -> ps, add DaemonDescription

- We keep ServiceDescription around unmodified (although it will need some
  cleanup later)
- We add DaemonDescription, and clean out the service-related ambiguities
- Add a new list_daemons() method for Orchestrator
- Add a new 'ceph orch ps' command
- In cephadm, drop get_services(), and implement list_daemons()
  - a million changes to make this work
- Adjust health alert and option names

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agovstart.sh: ceph orchestrator -> ceph orch
Sage Weil [Tue, 11 Feb 2020 15:47:02 +0000 (09:47 -0600)]
vstart.sh: ceph orchestrator -> ceph orch

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orch: split out daemon_action from service_action
Sage Weil [Tue, 11 Feb 2020 15:05:55 +0000 (09:05 -0600)]
mgr/orch: split out daemon_action from service_action

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #33205 into master
Sage Weil [Wed, 12 Feb 2020 17:13:41 +0000 (11:13 -0600)]
Merge PR #33205 into master

* refs/pull/33205/head:
mgr/cephadm: Bail if we cannot find a host for services
mgr/cephadm: fix placement of new daemons (mds,rgw,rbd-m)
mgr/orchestrator: minor change to improve type checking
mgr/cephadm: test_cephadm: simplify matching strings

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agoMerge pull request #32587 from zdover23/wip-doc-nautilus-osd-fix-10Jan2020
zdover23 [Wed, 12 Feb 2020 16:59:28 +0000 (02:59 +1000)]
Merge pull request #32587 from zdover23/wip-doc-nautilus-osd-fix-10Jan2020

doc: emphasize the importance of require-osd-release nautilus

5 years agotest: do not include unused headers 33247/head
Kefu Chai [Wed, 12 Feb 2020 16:21:26 +0000 (00:21 +0800)]
test: do not include unused headers

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agocmake: do not link against unused libs
Kefu Chai [Wed, 12 Feb 2020 12:57:42 +0000 (20:57 +0800)]
cmake: do not link against unused libs

if it's not used, there is no need to link against it.

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agorgw: Add test for bucket policy subuser 33165/head
Seena Fallah [Tue, 11 Feb 2020 20:39:37 +0000 (00:09 +0330)]
rgw: Add test for bucket policy subuser

Signed-off-by: Seena Fallah <seenafallah@gmail.com>
5 years agoceph-volume: add is_ceph_device unit tests 33223/head
Jan Fajerski [Wed, 12 Feb 2020 15:49:30 +0000 (16:49 +0100)]
ceph-volume: add is_ceph_device unit tests

Signed-off-by: Jan Fajerski <jfajerski@suse.com>
5 years agoceph-volume: fix is_ceph_device for lvm batch
Dimitri Savineau [Tue, 11 Feb 2020 21:53:55 +0000 (16:53 -0500)]
ceph-volume: fix is_ceph_device for lvm batch

This is a regression introduced by 634a709

The lvm batch command fails to prepare the OSDs on the created LV.
When using lvm batch, the LV/VG are created prior the OSD prepare.
During that creation, multiple tags are set with null value.

$ lvs -o lv_tags --noheadings
  ceph.cluster_fsid=null,ceph.osd_fsid=null,ceph.osd_id=null,ceph.type=null

Since we call is_ceph_device which returns True if the ceph.osd_id LVM
tag exists but doesn't test the value then we raise an execption.

When the tag value is set to 'null' then we can consider that the device
isn't part of the ceph cluster (because not yet prepared).

Closes: https://tracker.ceph.com/issues/44069
Signed-off-by: Dimitri Savineau <dsavinea@redhat.com>
5 years agoMerge pull request #32879 from shyukri/wip-42769-orch-log-handling-ench
Sebastian Wagner [Wed, 12 Feb 2020 15:32:34 +0000 (16:32 +0100)]
Merge pull request #32879 from shyukri/wip-42769-orch-log-handling-ench

mgr/orch: logging - handle lists output

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
5 years agoceph-volume: use get_device_vgs in has_common_vg 33246/head
Jan Fajerski [Wed, 12 Feb 2020 13:47:37 +0000 (14:47 +0100)]
ceph-volume: use get_device_vgs in has_common_vg

Fixes: https://tracker.ceph.com/issues/44099
Signed-off-by: Jan Fajerski <jfajerski@suse.com>
5 years agoMerge PR #33229 into master
Sage Weil [Wed, 12 Feb 2020 14:28:51 +0000 (08:28 -0600)]
Merge PR #33229 into master

* refs/pull/33229/head:
rpm: define weak_deps for el8

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agoMerge pull request #33230 from Rjerk/fix-multisite-doc-typo
Casey Bodley [Wed, 12 Feb 2020 13:48:31 +0000 (08:48 -0500)]
Merge pull request #33230 from Rjerk/fix-multisite-doc-typo

doc/radosgw/multisite-sync-policy.rst: fix typo

Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agobackport-resolve-issue: address some linter complaints 33173/head
Nathan Cutler [Wed, 12 Feb 2020 13:01:59 +0000 (14:01 +0100)]
backport-resolve-issue: address some linter complaints

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobackport-resolve-issue: extract PR number more carefully
Nathan Cutler [Mon, 10 Feb 2020 10:46:50 +0000 (11:46 +0100)]
backport-resolve-issue: extract PR number more carefully

This addresses cases where the previous regex '\\d++' was promiscuously
matching strings of digits that were not GitHub PR IDs.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobackport-resolve-issue: use Basic Authentication
Nathan Cutler [Mon, 10 Feb 2020 10:18:57 +0000 (11:18 +0100)]
backport-resolve-issue: use Basic Authentication

Address "Deprecation notice for authentication via URL query parameters"
and other GitHub API behavior changes.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agopython-common: add py.typed (PEP 561) 33236/head
Sebastian Wagner [Wed, 12 Feb 2020 10:34:40 +0000 (11:34 +0100)]
python-common: add py.typed (PEP 561)

Bugs found:

* Fixed documentation of how `mgr/Orchestrator.create_osds` is called
* mgr/Rook.create_osds: Added missing `.path` when querying paths.
* mgr/Rook.create_osds: Fixed progress message
* mgr/RookCluster.create_osds: Empty list instead of `None`
* python-common: use empty objects instead of `None`

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
5 years agoMerge pull request #33233 from tchaikov/wip-crimson-misc
Kefu Chai [Wed, 12 Feb 2020 10:02:31 +0000 (18:02 +0800)]
Merge pull request #33233 from tchaikov/wip-crimson-misc

crimson: fix build with GCC-10

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
5 years agoMerge pull request #33221 from liewegas/fix-44065
Kefu Chai [Wed, 12 Feb 2020 08:48:21 +0000 (16:48 +0800)]
Merge pull request #33221 from liewegas/fix-44065

ceph.spec: Recommend (but do not require) podman

Reviewed-by: Dimitri Savineau <dsavinea@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agocrimson/common: correct type of callback func 33233/head
Kefu Chai [Wed, 12 Feb 2020 08:12:38 +0000 (16:12 +0800)]
crimson/common: correct type of callback func

`md_config_obs_t` is defined as
```
using md_config_obs_t = ceph::md_config_obs_impl<ConfigProxy>;
```
in `common/config_obs.h`. it takes advantage of a fact that
somebody exposes the correct version of `ConfigProxy` to the global
namespace. this is intended to fulfill the needs of other components
which expects `md_config_obs_t`. otherwise we need to specify
`ceph::md_config_obs_impl<ceph::ConfigProxy>` or
`ceph::md_config_obs_impl<crimson::common::ConfigProxy>` depending on
if we are programming crimson or not.

but in this case, we are actually defining
`crimson::common::ConfigProxy`, so it'd be better to define
`md_config_obs_t` explicitly instead relying on "somebody" which exposes
`ConfigProxy`. and `ConfigObserver` is defined using the current
`ConfigProxy`, so it's more correct and more readable than using
`md_config_obs_t` defined in `common/config_obs.h`.

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agocmake: disable concepts in boost::asio
Kefu Chai [Wed, 12 Feb 2020 08:05:14 +0000 (16:05 +0800)]
cmake: disable concepts in boost::asio

GCC-10 and Clang choke when compiling a concept constrained with
its template parameter, which is in turn another concept. as a
workaround of the bug of boost::asio, we should disable concepts
support in it. but it's nice to enable it when the compiler is
able to use concepts to do some compile time checkings even the
concepts are not compliant to C++20.

Signed-off-by: Kefu Chai <kchai@redhat.com>