]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
5 years agoscript/ceph-backport.sh: leave Assignee blank in backport PR 29957/head
Nathan Cutler [Fri, 30 Aug 2019 12:32:22 +0000 (14:32 +0200)]
script/ceph-backport.sh: leave Assignee blank in backport PR

Signed-off-by: Nathan Cutler <ncutler@suse.com>
6 years agoscript/ceph-backport.sh: wholesale refactor
Nathan Cutler [Wed, 28 Aug 2019 11:57:43 +0000 (13:57 +0200)]
script/ceph-backport.sh: wholesale refactor

This commit refactors the script to make it more user-friendly and
maintainable. Added features:

* script now determine release/milestone from backport issue instead of
  requiring user to provide it
* script now generates a more verbose PR description
* backport PR title is based on original PR instead of the tracker issue
* improved error handling
* new --debug option that triggers "set -x"
* new --verbose option
* errors and diagnostic messages are now printed to stderr

Signed-off-by: Nathan Cutler <ncutler@suse.com>
6 years agoMerge pull request #29966 from idryomov/wip-krbd-zero-after-overlap
Ilya Dryomov [Wed, 28 Aug 2019 18:34:04 +0000 (20:34 +0200)]
Merge pull request #29966 from idryomov/wip-krbd-zero-after-overlap

qa: krbd_parent_overlap.t: fix read test

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
6 years agoMerge pull request #29967 from theanalyst/rgw/beast-endpoint-fix
Abhishek L [Wed, 28 Aug 2019 15:33:24 +0000 (17:33 +0200)]
Merge pull request #29967 from theanalyst/rgw/beast-endpoint-fix

rgw: asio: check the remote endpoint before processing requests

Reviewed-By: Casey Bodley <cbodley@redhat.com>
6 years agoqa: krbd_parent_overlap.t: fix read test 29966/head
Ilya Dryomov [Wed, 28 Aug 2019 15:07:07 +0000 (17:07 +0200)]
qa: krbd_parent_overlap.t: fix read test

It turns out this test has not been triggering the right code path for
a while now (krbd_parent_overlap.t was added just over a year ago, but
the original test goes back a few years).

To do its job it needs an empty clone with the overlap set to somewhere
in the middle of an object.  The test relied on shrinking for this, but
shrinking no longer fits the bill because a copyup is now performed for
the object with the overlap -- we never go to the parent after that.

Let's size the parent so that it ends in the middle of an object and
then grow an empty clone instead.  Also, while reading from page cache
does seem to trigger a read that straddles the overlap, it's not very
reliable, so supplement it with a direct read.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
6 years agoMerge pull request #29948 from smithfarm/wip-ceph-backport-sh-doc
Nathan Cutler [Wed, 28 Aug 2019 14:34:11 +0000 (16:34 +0200)]
Merge pull request #29948 from smithfarm/wip-ceph-backport-sh-doc

doc: script/ceph-backport.sh: add "Troubleshooting notes"

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
6 years agoMerge pull request #29950 from smithfarm/wip-bri-deep-scan-of-pr-desc
Nathan Cutler [Wed, 28 Aug 2019 14:33:37 +0000 (16:33 +0200)]
Merge pull request #29950 from smithfarm/wip-bri-deep-scan-of-pr-desc

script/backport-resolve-issue: handle tracker URLs better

Reviewed-by: Casey Bodley <cbodley@redhat.com>
6 years agorgw: asio: check the remote endpoint before processing requests 29967/head
Abhishek Lekshmanan [Wed, 7 Aug 2019 15:09:32 +0000 (17:09 +0200)]
rgw: asio: check the remote endpoint before processing requests

`socket.remote_endpoint()` can throw exceptions corresponding to errors in the
`getpeername` syscall, make sure these are handled.

Fixes: CVE-2019-10222, https://tracker.ceph.com/issues/40018
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
6 years agoMerge pull request #29815 from smanjara/wip-fix-bucket-link
Casey Bodley [Wed, 28 Aug 2019 12:10:11 +0000 (08:10 -0400)]
Merge pull request #29815 from smanjara/wip-fix-bucket-link

rgw: fix missing tenant prefix in bucket name during bucket link

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
6 years agoscript/backport-resolve-issue: handle tracker URLs better 29950/head
Nathan Cutler [Wed, 28 Aug 2019 09:21:17 +0000 (11:21 +0200)]
script/backport-resolve-issue: handle tracker URLs better

Before this commit, backport-resolve-issue would blindly grab the first tracker
URL it saw in the GitHub PR description. With this commit, it examines all the
tracker URLs it sees in the PR description and uses the first one that
corresponds to an issue in the Redmine Backport tracker.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
6 years agomgr/dashboard: migrate e2e tests to async await (#29758)
Volker Theile [Wed, 28 Aug 2019 10:26:17 +0000 (12:26 +0200)]
mgr/dashboard: migrate e2e tests to async await (#29758)

mgr/dashboard: migrate e2e tests to async await

Reviewed-by: Tiago Melo <tmelo@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
6 years agoMerge pull request #29942 from tchaikov/wip-bump-seastar
Kefu Chai [Wed, 28 Aug 2019 09:18:16 +0000 (17:18 +0800)]
Merge pull request #29942 from tchaikov/wip-bump-seastar

seastar: pick up latest changes and cleanups

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
6 years agodoc: script/ceph-backport.sh: add "Troubleshooting notes" 29948/head
Nathan Cutler [Wed, 28 Aug 2019 08:42:17 +0000 (10:42 +0200)]
doc: script/ceph-backport.sh: add "Troubleshooting notes"

Signed-off-by: Nathan Cutler <ncutler@suse.com>
6 years agomgr/dashboard: fix protractor.conf.js 29758/head
Patrick Seidensal [Tue, 27 Aug 2019 14:07:48 +0000 (16:07 +0200)]
mgr/dashboard: fix protractor.conf.js

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: set sensible `implicitWaitTimeout`
Patrick Seidensal [Tue, 27 Aug 2019 13:57:49 +0000 (15:57 +0200)]
mgr/dashboard: set sensible `implicitWaitTimeout`

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: fix issue in dashbboard test
Patrick Seidensal [Tue, 27 Aug 2019 13:29:15 +0000 (15:29 +0200)]
mgr/dashboard: fix issue in dashbboard test

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: prepend await before expect statements are used
Patrick Seidensal [Tue, 27 Aug 2019 12:53:41 +0000 (14:53 +0200)]
mgr/dashboard: prepend await before expect statements are used

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: fix issue E2E image with unclickable element
Patrick Seidensal [Tue, 27 Aug 2019 10:39:48 +0000 (12:39 +0200)]
mgr/dashboard: fix issue E2E image with unclickable element

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: refactoring E2E mirroring test
Patrick Seidensal [Mon, 26 Aug 2019 15:14:34 +0000 (17:14 +0200)]
mgr/dashboard: refactoring E2E mirroring test

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: refatoring E2E page helper test
Patrick Seidensal [Fri, 23 Aug 2019 23:54:54 +0000 (01:54 +0200)]
mgr/dashboard: refatoring E2E page helper test

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: refactoring E2E iscsi test
Patrick Seidensal [Fri, 23 Aug 2019 23:38:56 +0000 (01:38 +0200)]
mgr/dashboard: refactoring E2E iscsi test

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: refactoring Helper class to remove PageHelper instances
Patrick Seidensal [Fri, 23 Aug 2019 23:25:45 +0000 (01:25 +0200)]
mgr/dashboard: refactoring Helper class to remove PageHelper instances

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: refactoring E2E dashboard test
Patrick Seidensal [Fri, 23 Aug 2019 15:58:12 +0000 (17:58 +0200)]
mgr/dashboard: refactoring E2E dashboard test

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: reformat of `protractor.conf.js`
Patrick Seidensal [Wed, 21 Aug 2019 15:27:01 +0000 (17:27 +0200)]
mgr/dashboard: reformat of `protractor.conf.js`

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: refactoring of references of classes to point to classes directly
Patrick Seidensal [Wed, 21 Aug 2019 15:13:20 +0000 (17:13 +0200)]
mgr/dashboard: refactoring of references of classes to point to classes directly

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: fix UnhandledPromiseRejectionWarning in RGW users
Patrick Seidensal [Wed, 21 Aug 2019 11:24:45 +0000 (13:24 +0200)]
mgr/dashboard: fix UnhandledPromiseRejectionWarning in RGW users

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E dashboards to async/await
Patrick Seidensal [Wed, 21 Aug 2019 07:18:06 +0000 (09:18 +0200)]
mgr/dashboard: migrate E2E dashboards to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: improve overall E2E stability of navigation
Patrick Seidensal [Wed, 21 Aug 2019 07:16:02 +0000 (09:16 +0200)]
mgr/dashboard: improve overall E2E stability of navigation

The `navigateTo` method will check if a table exists on the table it has
been used to navigate to and if so, wait for the data of the table to
be loaded.

Fixes: https://tracker.ceph.com/issues/41349
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E user management tests
Patrick Seidensal [Mon, 26 Aug 2019 15:39:30 +0000 (17:39 +0200)]
mgr/dashboard: migrate E2E user management tests

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E images to async/await
Patrick Seidensal [Mon, 19 Aug 2019 12:07:27 +0000 (14:07 +0200)]
mgr/dashboard: migrate E2E images to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E iscsi to async/await
Patrick Seidensal [Mon, 19 Aug 2019 12:06:32 +0000 (14:06 +0200)]
mgr/dashboard: migrate E2E iscsi to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E mirroring to async/await
Patrick Seidensal [Mon, 19 Aug 2019 12:05:09 +0000 (14:05 +0200)]
mgr/dashboard: migrate E2E mirroring to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E alerts to async/await
Patrick Seidensal [Mon, 19 Aug 2019 12:03:53 +0000 (14:03 +0200)]
mgr/dashboard: migrate E2E alerts to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E configuration to async/await
Patrick Seidensal [Mon, 19 Aug 2019 12:02:13 +0000 (14:02 +0200)]
mgr/dashboard: migrate E2E configuration to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E crushmap to async/await
Patrick Seidensal [Mon, 19 Aug 2019 11:54:15 +0000 (13:54 +0200)]
mgr/dashboard: migrate E2E crushmap to async/await

Needed to adapt the backend to return the type of the tree nodes as the
previous selector did not work reliably.

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E hosts to async/await
Patrick Seidensal [Mon, 19 Aug 2019 11:07:05 +0000 (13:07 +0200)]
mgr/dashboard: migrate E2E hosts to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E logs to async/await
Patrick Seidensal [Mon, 19 Aug 2019 11:05:35 +0000 (13:05 +0200)]
mgr/dashboard: migrate E2E logs to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E mgr modules to async/await
Patrick Seidensal [Mon, 19 Aug 2019 11:03:58 +0000 (13:03 +0200)]
mgr/dashboard: migrate E2E mgr modules to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E monitors to async/await
Patrick Seidensal [Mon, 19 Aug 2019 10:36:14 +0000 (12:36 +0200)]
mgr/dashboard: migrate E2E monitors to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E osds to async/await
Patrick Seidensal [Mon, 19 Aug 2019 09:54:56 +0000 (11:54 +0200)]
mgr/dashboard: migrate E2E osds to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E filesystems to async/await
Patrick Seidensal [Mon, 19 Aug 2019 09:47:47 +0000 (11:47 +0200)]
mgr/dashboard: migrate E2E filesystems to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E nfs to async/await
Patrick Seidensal [Mon, 19 Aug 2019 09:44:30 +0000 (11:44 +0200)]
mgr/dashboard: migrate E2E nfs to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E daemons to async/await
Patrick Seidensal [Mon, 19 Aug 2019 08:23:39 +0000 (10:23 +0200)]
mgr/dashboard: migrate E2E daemons to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E rgw-users to async/await
Patrick Seidensal [Mon, 19 Aug 2019 08:21:50 +0000 (10:21 +0200)]
mgr/dashboard: migrate E2E rgw-users to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E buckets to async/await
Patrick Seidensal [Fri, 16 Aug 2019 12:39:54 +0000 (14:39 +0200)]
mgr/dashboard: migrate E2E buckets to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E Helper to async/await
Patrick Seidensal [Fri, 16 Aug 2019 12:39:35 +0000 (14:39 +0200)]
mgr/dashboard: migrate E2E Helper to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: run feature toggle service outside of Angular zone
Patrick Seidensal [Fri, 16 Aug 2019 12:35:32 +0000 (14:35 +0200)]
mgr/dashboard: run feature toggle service outside of Angular zone

to prevent Proctator from hanging indefinitely when testing pages where
the feature toggles are retrieved.

Fixes: mgr/dashboard: Switch to async/await for E2E tests
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: replace E2E test `moveClick` with `clickCheckbox`
Patrick Seidensal [Wed, 14 Aug 2019 09:59:45 +0000 (11:59 +0200)]
mgr/dashboard: replace E2E test `moveClick` with `clickCheckbox`

Ceph Dashboard replaces the original checkbox with a fancy replacement
using the pseudo selector "::before" inside the <label> tag. When the
fancy replacement checkbox is clicked, it actually triggers a click on
the label of the checkbox. `clickCheckbox` does the same.

Removed `moveClick` as it was used to perform an action that the user
would not be able to perform, namely clicking on the checkbox instead of
the checkboxes' label. It was also used for cases where it was not
necessary to be used for, hence the replacement `clickCheckbox` has been
introduced. It checks if the argument passed to it is of type `checkbox`
or `label`. If it is of type `label`, the label will be clicked. If it
is of type `checkbox`, the corresponding `label` is determined and
clicked. This replaces the old implementation with a solution that has
an easy to understand purpose. It also prevents every false application.

This method is designed to be used on all checkboxes of Ceph Dashboard.

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: migrate E2E pools to async/await
Patrick Seidensal [Fri, 16 Aug 2019 12:38:54 +0000 (14:38 +0200)]
mgr/dashboard: migrate E2E pools to async/await

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: prepare PageHelper to migrate pools
Patrick Seidensal [Wed, 21 Aug 2019 12:26:02 +0000 (14:26 +0200)]
mgr/dashboard: prepare PageHelper to migrate pools

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agomgr/dashboard: disable selenium promise manager
Patrick Seidensal [Wed, 21 Aug 2019 12:21:42 +0000 (14:21 +0200)]
mgr/dashboard: disable selenium promise manager

and migrate `protractor.conf.js` to use async/await.

Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
6 years agoMerge pull request #29889 from smithfarm/wip-clay-typo-fwdport
Nathan Cutler [Wed, 28 Aug 2019 07:32:15 +0000 (09:32 +0200)]
Merge pull request #29889 from smithfarm/wip-clay-typo-fwdport

doc/rados: Correcting some typos in the clay code documentation

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agocrimson/net/Socket: adapt to seastar v2 api 29942/head
Kefu Chai [Tue, 27 Aug 2019 16:50:33 +0000 (00:50 +0800)]
crimson/net/Socket: adapt to seastar v2 api

variadic futures is deprecated in seastar api v2, so let's use the new
variant.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/net/ProtocolV2: include fmt/chrono.h if fmt version >= 6.0
Kefu Chai [Tue, 27 Aug 2019 16:50:06 +0000 (00:50 +0800)]
crimson/net/ProtocolV2: include fmt/chrono.h if fmt version >= 6.0

* check libfmt version instead of the exisistence of chrono.h, as
  libfmt merged fmt/time.h into fmt/chrono.h since v 6.0, while in
  libfmt v5.3, fmt/chrono.h did not provide all the necessary bits
  for fmt::to_format(..., const tm&). see also
  https://github.com/fmtlib/fmt/commit/a939c75956d27996680ce498529da0d1668c4eac
  and https://github.com/fmtlib/fmt/blob/master/ChangeLog.rst
* use fmt API instead of libc API for getting `localtime()`, it's
  more C++ friendly than plain `localtime_r()`

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #29858 from dillaman/wip-41409
Mykola Golub [Wed, 28 Aug 2019 05:19:25 +0000 (08:19 +0300)]
Merge pull request #29858 from dillaman/wip-41409

test/librbd: set nbd timeout due to newer kernels defaulting it on

Reviewed-by: Mike Christie <mchristi@redhat.com>
Reviewed-by: Mykola Golub <mgolub@suse.com>
6 years agoMerge pull request #29932 from smithfarm/wip-doc-layout-fwdport
Gregory Farnum [Wed, 28 Aug 2019 03:18:44 +0000 (20:18 -0700)]
Merge pull request #29932 from smithfarm/wip-doc-layout-fwdport

doc: fix typo in doc/radosgw/layout.rst

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
6 years agoseastar: pick up latest changes
Kefu Chai [Wed, 28 Aug 2019 03:05:43 +0000 (11:05 +0800)]
seastar: pick up latest changes

* v2 api: remove variadic futures. let's be in sync with upstream.
* warn if the returned future is ignored. this helps us to catch
  bugs and to improve the readability of the code -- we need to
  explicitly ignore a future if we want to. and ideally, we should
  document the reason why a future is ignored.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge PR #28819 into master
Patrick Donnelly [Tue, 27 Aug 2019 22:57:44 +0000 (15:57 -0700)]
Merge PR #28819 into master

* refs/pull/28819/head:
doc/man/8/monmaptool: document the `--addv` argument.

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge pull request #29470 from liu-chunmei/ceph_seastar_cyan_store
Kefu Chai [Tue, 27 Aug 2019 16:47:58 +0000 (00:47 +0800)]
Merge pull request #29470 from liu-chunmei/ceph_seastar_cyan_store

crimson: futurized CyanStore's member functions and Collection

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/os/cyan_store: remove stale comment 29470/head
Kefu Chai [Sat, 24 Aug 2019 03:09:04 +0000 (11:09 +0800)]
crimson/os/cyan_store: remove stale comment

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson: add FuturizedCollection
chunmei Liu [Thu, 22 Aug 2019 07:47:40 +0000 (00:47 -0700)]
crimson: add FuturizedCollection

we will need to talk to BlueStore, and currently `ceph::os::Collection`
only works with `CyanStore`, so a wrapper around `ceph::os::Collection`
is added. we can subclass it to adapt to CyanStore and to BlueStore.

the underlying concrete `FuturizedStore` classes are responsible to
cast `FuturizedCollection` to their own `Collection` type if they
want to access the interface not exposed by `FuturizedCollection`.

Signed-off-by: chunmei Liu <chunmei.liu@intel.com>
6 years agocrimson/os: s/try_emplace()/insert()/
Kefu Chai [Sat, 24 Aug 2019 02:57:32 +0000 (10:57 +0800)]
crimson/os: s/try_emplace()/insert()/

avoid specifying the type of `map<>::value_type`.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson: always use Collection::get_cid()
Kefu Chai [Sat, 24 Aug 2019 01:55:22 +0000 (09:55 +0800)]
crimson: always use Collection::get_cid()

prepare for the futurized Collection, which will be an abstract
interface allowing us to talk to BlueStore with one of its concrete
subclass.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoos/ObjectStore: fix typo in comments
Kefu Chai [Thu, 22 Aug 2019 11:27:39 +0000 (19:27 +0800)]
os/ObjectStore: fix typo in comments

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/osd: lift continuation in PGMeta::load()
Kefu Chai [Thu, 22 Aug 2019 08:47:19 +0000 (16:47 +0800)]
crimson/osd: lift continuation in PGMeta::load()

after making `open_collection()` return a future, we don't need to chain
the body of `PGMeta::load()` after `omap_get_values()`. instead we can
lift it.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson: add futurized interfaces to CyanStore
chunmei Liu [Thu, 22 Aug 2019 06:50:02 +0000 (23:50 -0700)]
crimson: add futurized interfaces to CyanStore

Signed-off-by: chunmei Liu <chunmei.liu@intel.com>
6 years agoMerge pull request #29853 from dillaman/wip-41411
Mykola Golub [Tue, 27 Aug 2019 13:27:20 +0000 (16:27 +0300)]
Merge pull request #29853 from dillaman/wip-41411

test/cli-integration/rbd: fixed missing image and snap ids

Reviewed-by: Mykola Golub <mgolub@suse.com>
6 years agodoc: modify the wrong word "defails" to "details". 29932/head
ypdai [Tue, 12 Feb 2019 09:50:07 +0000 (17:50 +0800)]
doc: modify the wrong word "defails" to "details".

Signed-off-by: ypdai <self19900924@gmail.com>
(cherry picked from commit 8cefe3de7835ce136826faf595122cc210bf90af)

6 years agoMerge pull request #29877 from yuvalif/pubsub_regression_issue2
Yuval Lifshitz [Tue, 27 Aug 2019 13:18:33 +0000 (16:18 +0300)]
Merge pull request #29877 from yuvalif/pubsub_regression_issue2

rgw/pubsub: service reordering issue

6 years agoMerge pull request #29797 from smithfarm/wip-backport-resolve-issue
Nathan Cutler [Tue, 27 Aug 2019 13:14:01 +0000 (15:14 +0200)]
Merge pull request #29797 from smithfarm/wip-backport-resolve-issue

script: add backport-resolve-issue

Reviewed-by: Casey Bodley <cbodley@redhat.com>
6 years agoMerge pull request #29904 from smithfarm/wip-bci-resolve-parent
Nathan Cutler [Tue, 27 Aug 2019 13:07:51 +0000 (15:07 +0200)]
Merge pull request #29904 from smithfarm/wip-bci-resolve-parent

script/backport-create-issue: add --resolve-parent feature

Reviewed-by: Casey Bodley <cbodley@redhat.com>
6 years agoMerge pull request #29912 from tchaikov/wip-wheels-only-for-make-check
Kefu Chai [Tue, 27 Aug 2019 12:49:01 +0000 (20:49 +0800)]
Merge pull request #29912 from tchaikov/wip-wheels-only-for-make-check

install-deps.sh: only prepare wheels for "make check"

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
6 years agoscript: add backport-resolve-issue 29797/head
Nathan Cutler [Wed, 21 Aug 2019 14:49:26 +0000 (16:49 +0200)]
script: add backport-resolve-issue

This script processes GitHub backport PRs, checking for proper cross-linking
with a Redmine Backport tracker issue and, if a PR is merged and properly
cross-linked, it can optionally resolve the tracker issue and correctly
populate the "Target version" field.

The script takes a single positional argument, which is optional. If the
argument is an integer, it is assumed to be a GitHub backport PR ID (e.g. "28549").
In this mode ("single PR mode") the script processes a single GitHub backport
PR and terminates.

If the argument is not an integer, or is missing, it is assumed to be a
commit (SHA1 or tag) to start from. If no positional argument is given, it
defaults to the tag "BRI", which might have been added by the last run of the
script. This mode is called "scan merge commits mode".

In both modes, the script scans a local git repo, which is assumed to be
in the current working directory. In single PR mode, the script will work
only if the PR's merge commit is present in the current branch of the local
git repo. In scan merge commits mode, the script starts from the given SHA1
or tag, taking each merge commit in turn and attempting to obtain the GitHub
PR number for each.

For each GitHub PR, the script interactively displays all relevant information
(NOTE: this includes displaying the GitHub PR and Redmine backport issue in
web browser tabs!) and prompts the user for her preferred disposition.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
6 years agoMerge pull request #29790 from hjwsm1989/fix-unittest-osdmap
Kefu Chai [Tue, 27 Aug 2019 11:42:21 +0000 (19:42 +0800)]
Merge pull request #29790 from hjwsm1989/fix-unittest-osdmap

tests/osd: fix typo in unittest_osdmap

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agorgw/pubsub: service reordering issue 29877/head
Yuval Lifshitz [Sun, 25 Aug 2019 14:12:53 +0000 (17:12 +0300)]
rgw/pubsub: service reordering issue

Signed-off-by: Yuval Lifshitz <yuvalif@yahoo.com>
6 years agoinstall-deps.sh: only prepare wheels for "make check" 29912/head
Kefu Chai [Tue, 27 Aug 2019 01:22:34 +0000 (09:22 +0800)]
install-deps.sh: only prepare wheels for "make check"

* move `for_make_check` to the beginning of script, as FreeBSD will also
  use this variable
* extract `preload_wheels_for_tox()` function out to improve readability
* call `preload_wheels_for_tox()` only if `for_make_check` is true

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agodoc/man/8/monmaptool: document the `--addv` argument. 28819/head
Luca Castoro [Thu, 27 Jun 2019 13:58:06 +0000 (15:58 +0200)]
doc/man/8/monmaptool: document the `--addv` argument.

Fixes: http://tracker.ceph.com/issues/40568
Signed-off-by: Luca Castoro <luca.castoro@brightcomputing.com>
6 years agoMerge pull request #29090 from liewegas/wip-40792
Kefu Chai [Tue, 27 Aug 2019 09:34:13 +0000 (17:34 +0800)]
Merge pull request #29090 from liewegas/wip-40792

mon/MonClient: ENXIO when sending command to down mon

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28177 from jecluis/wip-noreply-failures
Kefu Chai [Tue, 27 Aug 2019 09:32:54 +0000 (17:32 +0800)]
Merge pull request #28177 from jecluis/wip-noreply-failures

mon: ensure prepare_failure() marks no_reply on op

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
6 years agoscript/backport-create-issue: add --resolve-parent feature 29904/head
Nathan Cutler [Mon, 26 Aug 2019 13:05:09 +0000 (15:05 +0200)]
script/backport-create-issue: add --resolve-parent feature

When --resolve-parent is provided on the command line, the script
will check the status of backport issues for those parent issues
all of whose backport issues already exist. If all the backport
issues are in status "Resolved", the parent issue's status is set
to "Resolved" as well.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
6 years agoMerge pull request #29862 from tchaikov/wip-41416
Kefu Chai [Tue, 27 Aug 2019 09:16:41 +0000 (17:16 +0800)]
Merge pull request #29862 from tchaikov/wip-41416

rgw,bluestore: fixes to address failures from check-generated.sh

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
6 years agoMerge pull request #29893 from xiexingguo/wip-inc-recovery-5
Xie Xingguo [Tue, 27 Aug 2019 05:16:20 +0000 (13:16 +0800)]
Merge pull request #29893 from xiexingguo/wip-inc-recovery-5

osd/osd_types: inc-recovery - add special handler for lost_revert

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agotest/encoding/check-generated.sh: show diff if cmp fails 29862/head
Kefu Chai [Sat, 24 Aug 2019 06:12:41 +0000 (14:12 +0800)]
test/encoding/check-generated.sh: show diff if cmp fails

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agotest/encoding/check-generated.sh: run loop in the same shell
Kefu Chai [Sun, 25 Aug 2019 04:09:24 +0000 (12:09 +0800)]
test/encoding/check-generated.sh: run loop in the same shell

set parent scope variables in the same shell.

foo | while read ....

in the above statement, `while read ...` is executed in a subshell. so
it cannot change the bash variables in its parent shell.

in this change, the output of `foo` is redirected to the stdin of `while
read` statement. so we can capture the test failures.

before this change, the test always succeed, even if there are failures.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocommon/DecayCounter: do not decay when testing denc
Kefu Chai [Sun, 25 Aug 2019 13:22:16 +0000 (21:22 +0800)]
common/DecayCounter: do not decay when testing denc

check-generated.sh tries to verify the invariance of a type after
encoding and decoding. so we should keep the value of `DecayCounter` the
same when encoding/decoding/dumping.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agorgw: rgw_log_entry always initialize total_time
Kefu Chai [Sun, 25 Aug 2019 06:54:30 +0000 (14:54 +0800)]
rgw: rgw_log_entry always initialize total_time

zero-initialize rgw_log_entry::total_time

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agomgr/ServiceMap: use plain gid
Kefu Chai [Sun, 25 Aug 2019 06:53:20 +0000 (14:53 +0800)]
mgr/ServiceMap: use plain gid

* partially revert 5c25a018. which is not backward compatible.
* change `ServiceMap::get_daemon()` so it returns a
  `pair<Daemon*,bool>`.

git is an `optional<uint64_t>`, so we cannot dump it without checking.

Fixes: https://tracker.ceph.com/issues/41424
Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoosd: init pg_pool_t::pg_autoscale_mode in ctor
Kefu Chai [Sun, 25 Aug 2019 04:08:39 +0000 (12:08 +0800)]
osd: init pg_pool_t::pg_autoscale_mode in ctor

so its value is determined

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoosd: use scoped enum for pg_pool_t::pg_autoscale_mode
Kefu Chai [Sun, 25 Aug 2019 04:06:51 +0000 (12:06 +0800)]
osd: use scoped enum for pg_pool_t::pg_autoscale_mode

for better readability

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoosd: use in-class initialization in pg_pool_t
Kefu Chai [Sun, 25 Aug 2019 03:49:50 +0000 (11:49 +0800)]
osd: use in-class initialization in pg_pool_t

less repeat this way

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoos/bluestore: implement copy ctor and assignment for bluestore_blob_use_tracker_t
Kefu Chai [Sun, 25 Aug 2019 03:48:42 +0000 (11:48 +0800)]
os/bluestore: implement copy ctor and assignment for bluestore_blob_use_tracker_t

to address the `check-generated.sh` test failure.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agorgw: RGWObjManifest::obj_iterator::seek always update locations
Kefu Chai [Sat, 24 Aug 2019 15:41:57 +0000 (23:41 +0800)]
rgw: RGWObjManifest::obj_iterator::seek always update locations

we should update explicit loc and location even if
`ofs >= manifest->obj_size`. there is chance that we are updating an end
iterator whose ofs is equal to obj_size. before being updated, the end
iterator points to an implicit location, while after being updated, the
manifest could be using an explicit location, so we should update the
end iterator as well.

Fixes: https://tracker.ceph.com/issues/41416
Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agorgw: RGWObjManifest::obj_iterator: init member variables in-class
Kefu Chai [Sun, 25 Aug 2019 01:07:48 +0000 (09:07 +0800)]
rgw: RGWObjManifest::obj_iterator: init member variables in-class

* remove the init() member function which is solely used by the
  constructors.
* use constructor delegation to minimize the repeating

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agorgw: update_iterator() in RGWObjManifest::set_explicit()
Kefu Chai [Sat, 24 Aug 2019 06:12:06 +0000 (14:12 +0800)]
rgw: update_iterator() in RGWObjManifest::set_explicit()

we should update the end iterator when updating RGWObjManifest with its
parts

Fixes: https://tracker.ceph.com/issues/41416
Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #29913 from tchaikov/wip-debian/control
Kefu Chai [Tue, 27 Aug 2019 02:28:00 +0000 (10:28 +0800)]
Merge pull request #29913 from tchaikov/wip-debian/control

debian/control: fix Build-Depends

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
6 years agodebian/control: fix Build-Depends 29913/head
Kefu Chai [Tue, 27 Aug 2019 02:05:15 +0000 (10:05 +0800)]
debian/control: fix Build-Depends

it's a regression introduced by 5d6d770e

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge PR #29867 into master
Patrick Donnelly [Mon, 26 Aug 2019 21:09:39 +0000 (14:09 -0700)]
Merge PR #29867 into master

* refs/pull/29867/head:
doc: default values for mon_health_to_clog_* were flipped

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge pull request #29822 from vumrao/wip-vumrao-41399
Neha Ojha [Mon, 26 Aug 2019 19:57:58 +0000 (12:57 -0700)]
Merge pull request #29822 from vumrao/wip-vumrao-41399

os/bluestore/BlueFS: Move bluefs alloc size initialization log message to log level 1.

Reviewed-by: Sage Weil <sage@redhat.com>
6 years agoos/bluestore/BlueFS: Move bluefs alloc size initialization log message to log level 1 29822/head
Vikhyat Umrao [Thu, 22 Aug 2019 16:45:40 +0000 (09:45 -0700)]
os/bluestore/BlueFS: Move bluefs alloc size initialization log message to log level 1
Fixes: https://tracker.ceph.com/issues/41399
Signed-off-by: Vikhyat Umrao <vumrao@redhat.com>
6 years agoMerge pull request #29903 from tchaikov/wip-pip-download
Kefu Chai [Mon, 26 Aug 2019 16:44:28 +0000 (00:44 +0800)]
Merge pull request #29903 from tchaikov/wip-pip-download

install-deps.sh: download wheel using 'pip wheel'

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>