Commit Graph

86289 Commits

Author SHA1 Message Date
Josh Durgin
aef8d96def
Merge pull request #21710 from neha-ojha/wip-cosbench-workloads
qa: add cosbench workloads and override teuthology default settings

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2018-04-27 18:30:11 -07:00
xie xingguo
47359a3b8e mon, osd: add create-time for pool
We want to know how old the pools currently are, on which mgr/balancer
can make some time-related smart decisions based.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2018-04-28 08:42:51 +08:00
Neha Ojha
1b6bf0d423 qa/suites/perf-basic: add cosbench write workload
Signed-off-by: Neha Ojha <nojha@redhat.com>
2018-04-27 16:15:30 -07:00
Neha Ojha
f670f2d6d3 qa/suites/perf-basic: override default teuthology settings
Signed-off-by: Neha Ojha <nojha@redhat.com>
2018-04-27 16:07:11 -07:00
Neha Ojha
f01eb7adc6 qa/suites/rados/perf: add cosbench workloads
Signed-off-by: Neha Ojha <nojha@redhat.com>
2018-04-27 16:02:40 -07:00
Sage Weil
5e067b9dcf ceph_test_rados_api_aio: fix race with full pool and osdmap
We send ops until we get a EDQUOT, and then assert our next op to
a different object also gets EDQUOT.  However, if the second osd
doesn't have as new a map it may succeed.  Make sure the client has
the latest (mon) map, and thus the one marking the pool full, before
we send the second op.  That ensures the second OSD also has that
newer map and also returns EDQUOT.

Fixes: http://tracker.ceph.com/issues/23917
Signed-off-by: Sage Weil <sage@redhat.com>
2018-04-27 17:37:33 -05:00
Danny Al-Gaaf
025d0f3db6 test/perf_local.cc: reduce scope of some variables
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2018-04-27 23:52:37 +02:00
Danny Al-Gaaf
dc43a88021 client/Client.cc: reduce scope of variable 'r'
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2018-04-27 23:51:56 +02:00
Jason Dillaman
0cb3e64221
Merge pull request #21704 from liewegas/wip-rados-old-clients
qa/suites/rados/thrash-old-clients: add rbd tests

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-04-27 17:35:58 -04:00
Yuri Weinstein
6a7926214a
Merge pull request #21339 from guzhongyan/tp-cleanup
osd: drop unused osd_disk_tp related options

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-04-27 14:22:35 -07:00
Yuri Weinstein
2c98007a13
Merge pull request #21630 from neha-ojha/wip-rgw-pools
qa: modify rgw default pool names

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2018-04-27 14:21:52 -07:00
Danny Al-Gaaf
f91ffea306 common/TrackedOp: fix 'warned' handling
Fix for this cppcheck issue:

[src/common/TrackedOp.cc:385]: (style) The scope of the variable
 'warned' can be reduced.

Actually it seems that warned was not set correctly anymore
after rewrite of the code. Set 'warned' in with_slow_ops_in_flight()
as already done with number of slow iops.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2018-04-27 23:07:12 +02:00
Sage Weil
9fbdca34bf qa/suites/rados/thrash-old-clients: add cls_rbd, rbd api tests
Signed-off-by: Sage Weil <sage@redhat.com>
2018-04-27 14:04:25 -05:00
Neha Ojha
33db6bdfdd qa/suites/rados/perf: override default teuthology settings
Signed-off-by: Neha Ojha <nojha@redhat.com>
2018-04-27 12:04:00 -07:00
Yang Honggang
e40092f6e3 kv/RocksDBStore: fix rocksdb error when block cache is disabled
Fixes: http://tracker.ceph.com/issues/23816
Signed-off-by: Yang Honggang <yanghonggang@umcloud.com>
2018-04-27 17:46:36 +00:00
Sage Weil
049e9097a9
Merge pull request #21703 from liewegas/wip-rados-old-clients
qa/suites/rados/thrash-old-clients: add hammer clients
2018-04-27 12:25:48 -05:00
Sage Weil
7cbaa62498 qa/suites/rados/thrash-old-clients: add hammer
Signed-off-by: Sage Weil <sage@redhat.com>
2018-04-27 11:40:53 -05:00
Sage Weil
41fae6e9c4
Merge pull request #21679 from liewegas/wip-rados-old-clients
qa/suites/rados/thrash-old-clients: do some thrashing with jewel and luminous clients

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2018-04-27 11:30:39 -05:00
Sage Weil
fd017788f1
Merge pull request #21605 from liewegas/wip-osdmap-encode
mon: cache reencoded osdmaps

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Xiaoxi CHEN <xiaoxchen@ebay.com>
2018-04-27 11:13:56 -05:00
Sage Weil
579b8edb2c messages/MOSDMap: fix compat_version for MOSDMap
Jewel clients see
 will not decode message of type 41 version 4 because compat_version 4 > supported version 3

The problem is when compat_version == 0 and head_version != 0, we
interpret compat_version == head_version.  From Message::encode,

    // if the encoder didn't specify past compatibility, we assume it
    // is incompatible.
    if (header.compat_version == 0)
      header.compat_version = header.version;

Broken by 49833c3bb2 for the
head_version=4 case (compat_version needs to be 3).

Signed-off-by: Sage Weil <sage@redhat.com>
2018-04-27 11:12:43 -05:00
Sage Weil
4bea8b55d3 crush/CrushWrapper: clean up member init
Signed-off-by: Sage Weil <sage@redhat.com>
2018-04-27 11:12:43 -05:00
Xiaoxi CHEN
dc7a219468 messages/MOSDMap: significant feature bits.
1. MOSDMap go with features indicating the features
this map encoded for.

2. Only reencode if significant bits mismatch between
target features and my features.

also update mon/OSDMonitor and osd/OSDService to adopt this change.

Signed-off-by: Xiaoxi CHEN <xiaoxchen@ebay.com>
2018-04-27 11:12:43 -05:00
Xiaoxi CHEN
d84a49e262 mon/OSDMonitor: add feature into osdmap cache key.
Change the cache from
SimpleLRU<version_t, bufferlist> inc_osd_cache;
to
SimpleLRU<pair<version_t, uint64_t>, bufferlist> inc_osd_cache;

By doing this , we can cache several encoded osdmap for different
features, not necessary to re-encoding for each client.

Signed-off-by: Xiaoxi CHEN <xiaoxchen@ebay.com>
2018-04-27 11:12:43 -05:00
Abhishek Lekshmanan
12c1f84678 osdc/Objector: use std::shared_mutex instead of boost::shared_mutex
Since boost::threads support interruption by default locking over
boost::shared_mutexes may throw if the thread is interrupted. Replacing this by
std:: variant

Fixes: http://tracker.ceph.com/issues/23910
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
2018-04-27 18:05:13 +02:00
Volker Theile
87ff98c95e mgr/dashboard: Be more selective when catching exceptions.
- Do some minor improvements in the RGW client
- Do not catch ALL exceptions to do not block the current exception handler that prints the stack trace in the log file
- Throw RequestException istead of Exception when user does not have the required keys

Signed-off-by: Volker Theile <vtheile@suse.com>
2018-04-27 15:59:57 +02:00
Volker Theile
e1d344b55f mgr/dashboard: Address review comments
Signed-off-by: Volker Theile <vtheile@suse.com>
2018-04-27 15:59:57 +02:00
Volker Theile
8a815ee728 mgr/dashboard: Add RGW management features
Signed-off-by: Volker Theile <vtheile@suse.com>
2018-04-27 15:59:57 +02:00
Volker Theile
25a671b7c9 mgr/dashboard: Add Copy2ClipboardButtonDirective
Signed-off-by: Volker Theile <vtheile@suse.com>
2018-04-27 15:59:57 +02:00
John Spray
b7a5da8bf0 qa: update dashboard tests for https://
Signed-off-by: John Spray <john.spray@redhat.com>
2018-04-27 09:58:47 -04:00
John Spray
0442468c65 mgr/dashboard: enable SSL in standby mode
Signed-off-by: John Spray <john.spray@redhat.com>
2018-04-27 09:58:47 -04:00
John Spray
6185bd66a9 mgr: implement get_store in StandbyPyModules
Signed-off-by: John Spray <john.spray@redhat.com>
2018-04-27 09:58:46 -04:00
John Spray
37faa38315 mgr: expose get_store into MgrStandbyModule
Signed-off-by: John Spray <john.spray@redhat.com>
2018-04-27 09:58:46 -04:00
John Spray
1837685ac0 mgr/dashboard: add pyopenssl to requirements.txt
Use in certificate auto generation

Signed-off-by: John Spray <john.spray@redhat.com>
2018-04-27 09:58:46 -04:00
John Spray
f521ffdb90 vstart: update for dashboard TLS
Signed-off-by: John Spray <john.spray@redhat.com>
2018-04-27 09:58:46 -04:00
John Spray
3cb0a7ba34 mgr/dashboard: enable TLS
Very similar to restful module.  Cribbed from
earlier patch by @sebastian-philipp, this works
now because of the cherrypy 3.5.0 workaround
in the preceding commit.

This is missing the StandbyMgrModule part because
it is missing get_store for the moment.

Signed-off-by: John Spray <john.spray@redhat.com>
2018-04-27 09:58:46 -04:00
John Spray
ce92ddf4d8 mgr/dashboard: add monkey patch workaround for ssl
If a more recent version of cherrypy is in use
this should all Just Work, but this particular
buggy version happens to be in both Fedora 27
and Ubuntu Xenial, so for practical purposes
we need to handle it.

Signed-off-by: John Spray <john.spray@redhat.com>
2018-04-27 09:58:46 -04:00
Jan Fajerski
c7456a4ecf pybing/mgr/prometheus: return default port if config-key get returns empty
Signed-off-by: Jan Fajerski <jfajerski@suse.com>
2018-04-27 15:36:11 +02:00
Ricardo Dias
e4eef6b3a1
Merge pull request #21693 from LenzGr/mgr-dashboard-documentation
doc: Updated dashboard feature list.

Reviewed-by: Ricardo Marques <rimarques@suse.com>
Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
2018-04-27 14:28:02 +01:00
Sebastian Wagner
d32427f414 mgr/dashboard: Clean up Pylint warnings
* Enabled warnings that actually make sense
* Enabled `fixme` as we only have two left.
* Removed disable statements that use warning-ids
* Removed disable statements that are no longer needed

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2018-04-27 14:54:44 +02:00
Jason Dillaman
57a4628d11
Merge pull request #21586 from trociny/wip-deep-copy-fixes
librbd: skip head object map update when deep copying object beyond image size

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-04-27 08:37:24 -04:00
Jason Dillaman
de4587012d qa/suites/rbd: rbd-mirror fsx stress test
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-04-27 08:34:42 -04:00
Jason Dillaman
1d5b146cfa rbd-mirror: clean up ENOENT error message
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-04-27 08:34:28 -04:00
Jason Dillaman
1f38a52678 rbd-mirror: move state machine transition debug messages to higher priority
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-04-27 08:34:07 -04:00
Jason Dillaman
d1ebfb6a71 test/librbd/fsx: add support for cluster and client id optionals
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-04-27 08:33:38 -04:00
Lenz Grimmer
ef86ee1eb0 doc: Updated dashboard feature list.
Updated the dashboard documentation and added recently merged
RBD management features (flatten, clone, copy)

Signed-off-by: Lenz Grimmer <lgrimmer@suse.com>
2018-04-27 14:17:58 +02:00
Yan, Zheng
72d249ab0a mds: properly distinguish cap update from snap flush
Both Locker::_do_cap_update() and Locker::_do_snap_update() can update
snap inode. But only the second function is called in the case that a
client has finished snap data writeback,

Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
2018-04-27 19:10:02 +08:00
Yan, Zheng
5643909b36 mds: update dev document of cephfs snapshot
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
Fixes: http://tracker.ceph.com/issues/23583
2018-04-27 19:08:21 +08:00
Yan, Zheng
24bb126dbe doc: add release notes for cephfs snapshot
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
2018-04-27 19:08:19 +08:00
Lenz Grimmer
9360f76410
Merge pull request #21681 from Devp00l/wip-rbd-form-type-error-fix
mgr/dashboard: Fixes type error in RBD form

Reviewed-by: Volker Theile <vtheile@suse.com>
2018-04-27 11:35:27 +02:00
Mykola Golub
0cd7360750
Merge pull request #21682 from dillaman/wip-23888
rbd-mirror: rename asok hook to match image name when not replaying

Reviewed-by: Mykola Golub <mgolub@suse.com>
2018-04-27 11:52:26 +03:00