Commit Graph

101675 Commits

Author SHA1 Message Date
Patrick Seidensal
be3d0c0fa3 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>
2019-08-28 09:38:48 +02:00
Patrick Seidensal
a69a804e59 mgr/dashboard: migrate E2E pools to async/await
Fixes: https://tracker.ceph.com/issues/40693

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
2019-08-28 09:38:48 +02:00
Patrick Seidensal
35b038b7f9 mgr/dashboard: prepare PageHelper to migrate pools
Fixes: https://tracker.ceph.com/issues/40693

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
2019-08-28 09:38:48 +02:00
Patrick Seidensal
6e5398f9ef 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>
2019-08-28 09:38:48 +02:00
Rishabh Dave
ab3a58e781 ceph-volume: reuse list of LVs
Avoid creating of list of LVs in different methods of the same module
and resue them.

Fixes: https://tracker.ceph.com/issues/37490
Signed-off-by: Rishabh Dave <ridave@redhat.com>
2019-08-28 13:05:33 +05:30
Nathan Cutler
cde6489691
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>
2019-08-28 09:32:15 +02:00
Kefu Chai
2f522b22de 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>
2019-08-28 14:46:43 +08:00
Kefu Chai
9d0ff5b3b9 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
  a939c75956
  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>
2019-08-28 14:46:43 +08:00
Mykola Golub
a7d88133d5
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>
2019-08-28 08:19:25 +03:00
Mark Nelson
b7608ec280 rgw/rgw_op: Remove get_val from hotpath via legacy options
Signed-off-by: Mark Nelson <mnelson@redhat.com>
2019-08-27 23:35:47 -04:00
Gregory Farnum
e81ef76cae
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>
2019-08-27 20:18:44 -07:00
Kefu Chai
101cc1fb51 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>
2019-08-28 11:08:33 +08:00
Yingxin Cheng
95767be0b9 crimson/net: improve loggings for replacing
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2019-08-28 10:16:39 +08:00
Yingxin Cheng
fcbf7dc561 crimson/net: remove the check of impossible CLOSING state
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2019-08-28 10:16:39 +08:00
Yingxin Cheng
e9277ead1b crimson/net: allow send messages in ms_handle_accept()
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2019-08-28 10:16:39 +08:00
Yingxin Cheng
df4fe4b1cf crimson/net: make connect/accept atomic with state transition
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2019-08-28 10:16:39 +08:00
Yingxin Cheng
c4a8985104 crimson/net: prevent exception leak in ProtocolV2.cc
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2019-08-28 10:16:39 +08:00
Yingxin Cheng
1575a7b919 crimson/net: set peer_addr in server_reconnect()
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2019-08-28 10:16:39 +08:00
Yingxin Cheng
3fee504066 crimson/net: reconnect if sent queue is not empty
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2019-08-28 10:16:39 +08:00
Yingxin Cheng
b63c1a16d7 crimson/net: fix exception handling chain with shared_future<>
Fix the assertion failure when exception raised by sending ReconnectOk
or ServerIdent at REPLACING state.

Failed assertion:
ceph/src/seastar/include/seastar/core/future.hh:284: void
seastar::future_state_base::set_exception(std::__exception_ptr::exception_ptr&&):
Assertion `_u.st == state::future' failed.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2019-08-28 10:16:39 +08:00
Yingxin Cheng
5f347a8772 crimson/net: stop generating new client_cookie when reconnect
When handshake failed before client receive server_cookie, don't renew
client_cookie, or the session will be reset and pending messages will be
lost.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2019-08-28 10:16:39 +08:00
Yingxin Cheng
1f842bd06d crimson/net: move write exception handling to seastar::repeat()
* prevent exception leak in do_write_dispatch_sweep()
* no exception handling logic inside each repeat()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2019-08-28 10:16:39 +08:00
Yingxin Cheng
7b43b98a48 crimson/net: dispatch writes if messages are requeued
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2019-08-28 10:16:39 +08:00
Yingxin Cheng
c68fb13481 crimson/net: add missing return in Protocol::write_event()
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2019-08-28 10:16:39 +08:00
Yingxin Cheng
58dcc60c73 crimson/net: add Connection::is_closed() for tests
Tests need to introspect whether the connection is closed correctly.
For normal users, ms_handle_reset() will notify them when a connection is
closed by messenger.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2019-08-28 10:16:39 +08:00
David Zafman
38ecc4e92c osd: Fix assert in the case that snapset is missing
Fixes: https://tracker.ceph.com/issues/41517

Signed-off-by: David Zafman <dzafman@redhat.com>
2019-08-28 01:58:34 +00:00
Yingxin Cheng
6631e3dc01 crimson/net: return bool from Connection::is_connected()
There's no need to return a futurized bool from is_connected() if we are
holding ConnectionRef from the same core. Also add the missing const
qualifier.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2019-08-28 09:17:57 +08:00
Jianpeng Ma
c0fbf8636f os/bluestore: print correctly info.
kv_committing/deferred_stable already be cleared when print debug messages.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
2019-08-28 09:07:41 +08:00
Patrick Donnelly
18a41277fb
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>
2019-08-27 15:57:44 -07:00
David Zafman
87d80eb417 test: ceph-objectstore-tool add remove --force with bad snapset test
Signed-off-by: David Zafman <dzafman@redhat.com>
2019-08-27 22:30:02 +00:00
Kefu Chai
a9469f4b78
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>
2019-08-28 00:47:58 +08:00
Kefu Chai
e0d62124fb crimson/os/cyan_store: remove stale comment
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-08-28 00:03:53 +08:00
chunmei Liu
0fbedd538c 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>
2019-08-28 00:03:53 +08:00
Kefu Chai
6188e31791 crimson/os: s/try_emplace()/insert()/
avoid specifying the type of `map<>::value_type`.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-08-28 00:03:53 +08:00
Kefu Chai
da7aa4c5e2 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>
2019-08-28 00:03:53 +08:00
Mykola Golub
de66e0b89c qa/workunits/rbd: add 'remove mirroring pool' test
Signed-off-by: Mykola Golub <mgolub@suse.com>
2019-08-27 16:42:51 +01:00
Mykola Golub
00b2c86f7c librbd: behave more gracefully when data pool removed
allowing to open the image and do some maintenance operations,
and returning -ENODEV for ops that require data pool.

Fixes: https://tracker.ceph.com/issues/41206
Signed-off-by: Mykola Golub <mgolub@suse.com>
2019-08-27 16:42:51 +01:00
Kefu Chai
cb1c9b81f5 os/ObjectStore: fix typo in comments
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-08-27 22:55:59 +08:00
Kefu Chai
952b88b009 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>
2019-08-27 22:55:59 +08:00
chunmei Liu
36ef2b4dec crimson: add futurized interfaces to CyanStore
Signed-off-by: chunmei Liu <chunmei.liu@intel.com>
2019-08-27 22:55:57 +08:00
Volker Theile
4dd6c34182 mgr/dashboard: Add missing text translation
Signed-off-by: Volker Theile <vtheile@suse.com>
2019-08-27 15:46:46 +02:00
Mykola Golub
ad4782075b
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>
2019-08-27 16:27:20 +03:00
ypdai
3b8fe9aa96 doc: modify the wrong word "defails" to "details".
Signed-off-by: ypdai <self19900924@gmail.com>
(cherry picked from commit 8cefe3de7835ce136826faf595122cc210bf90af)
2019-08-27 15:22:21 +02:00
Yuval Lifshitz
9945a9c084
Merge pull request #29877 from yuvalif/pubsub_regression_issue2
rgw/pubsub: service reordering issue
2019-08-27 16:18:33 +03:00
Nathan Cutler
808d394beb
Merge pull request #29797 from smithfarm/wip-backport-resolve-issue
script: add backport-resolve-issue

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2019-08-27 15:14:01 +02:00
Nathan Cutler
91d62cf8fa
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>
2019-08-27 15:07:51 +02:00
Yao Zongyou
6a9d8d53f5 osdc: using decltype(auto) instead of trailing return type declaration
Signed-off-by: Yao Zongyou <yaozongyou@vip.qq.com>
2019-08-27 20:53:19 +08:00
Kefu Chai
e0f1ed20b9
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>
2019-08-27 20:49:01 +08:00
Nathan Cutler
70ebffca56 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>
2019-08-27 14:42:37 +02:00
Volker Theile
67a3bde19d mgr/dashboard: Display legend for CephFS standbys
If there is no data available for standbys, the UI looks strange without a legend.

Signed-off-by: Volker Theile <vtheile@suse.com>
2019-08-27 13:56:13 +02:00