Sage Weil
bf8a109035
Merge pull request #17684 from majianpeng/bluefs-release-extents
...
os/bluestore/BlueFS: move release unused extents work in _flush_and_syn_log
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Sage Weil <sage@redhat.com>
2017-09-28 09:42:39 -05:00
Sage Weil
4e0a983915
Merge pull request #18020 from theanalyst/doc-changelog-12.2.1
...
doc: add changelog for 12.2.1
Reviewed-by: Sage Weil <sage@redhat.com>
2017-09-28 08:56:12 -05:00
Abhishek Lekshmanan
fb69ba6f43
doc: add changelog for 12.2.1
...
Signed-off-by: Abhishek Lekshmanan <alekshmanan@suse.com>
2017-09-28 15:53:35 +02:00
Sage Weil
20b0055e0d
Merge pull request #17769 from optimistyzy/97_new_opt
...
os/bluestore/NVMEDevice: Remove using dpdk thread
Reviewed-by: Haomai Wang <haomai@xsky.com>
2017-09-28 08:30:44 -05:00
Sage Weil
eab91bfdaf
Merge pull request #18001 from liewegas/wip-21417
...
os/bluestore: put cached attrs in correct mempool
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Varada Kari <varada.kari@gmail.com>
2017-09-28 08:30:11 -05:00
Abhishek L
7e253f87e2
Merge pull request #17755 from dillaman/wip-21353
...
doc/release-notes: ensure RBD users can blacklist prior to upgrade
Reviewed-By: Nathan Cutler <ncutler@suse.com>
2017-09-28 14:56:20 +02:00
Sage Weil
80c60fcde2
os/bluestore: move several buffer{ptr,list}s into cache_other mempool
...
Signed-off-by: Sage Weil <sage@redhat.com>
2017-09-28 08:17:00 -04:00
Sage Weil
e7762ea147
os/bluestore: put new attrs in correct mempool too
...
Signed-off-by: Sage Weil <sage@redhat.com>
2017-09-28 08:16:55 -04:00
Xie Xingguo
58f329c056
Merge pull request #17966 from xiexingguo/wip-bluefs-kill-block-total
...
os/bluestore/BlueFS: several cleanups
Reviewed-by: Sage Weil <sage@redhat.com>
2017-09-28 19:04:31 +08:00
John Spray
0ad7bd0b43
tools: update monstore tool for fsmap, mgrmap
...
Fixes: http://tracker.ceph.com/issues/21577
Signed-off-by: John Spray <john.spray@redhat.com>
2017-09-28 11:07:56 +01:00
John Spray
61ceafc8bb
tools: handle decode errors in monstore tool
...
Print a single line message instead of dumping
a backtrace.
Signed-off-by: John Spray <john.spray@redhat.com>
2017-09-28 11:07:56 +01:00
Kefu Chai
f2a86506ad
ceph-disk: more precise error message when a disk is specified
...
we raise an exception if the path is not a block device, e.g. /dev/tty,
or it's disk, e.g, /dev/sda.
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-09-28 18:03:14 +08:00
John Spray
37f7fb76af
Merge pull request #18013 from tchaikov/wip-dashboard-favicon
...
mgr/dashboard: use rel="icon" for favicon
Reviewed-by: John Spray <john.spray@redhat.com>
2017-09-28 09:32:17 +01:00
Xinze Chi
96a3cb698a
osd: using get_rmissing instread of missing as the judgement
...
the below code using peer_missing iterator
Signed-off-by: Xinze Chi <xinze@xsky.com>
2017-09-28 14:50:07 +08:00
Kefu Chai
af11e5cbf6
Merge pull request #17993 from jcsp/wip-21572
...
mgr/dashboard: sort servers and OSDs in OSD list
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-09-28 14:38:26 +08:00
Kefu Chai
6b85a0caaf
Merge pull request #17937 from tchaikov/wip-automake-cleanup
...
automake: remove files required by automake
Reviewed-by: Gregory Farnum <gfarnum@redhat.com>
2017-09-28 14:05:16 +08:00
Kefu Chai
a6e79d91fb
mgr/dashboard: use rel="icon" for favicon
...
shortcut is not a standard compliant link type, see
https://www.w3.org/TR/html5/links.html#linkTypes .
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-09-28 13:51:27 +08:00
Kefu Chai
cda8d1df20
Merge pull request #17991 from jcsp/wip-21570
...
mgr/dashboard: handle null in format_number
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-09-28 13:22:22 +08:00
Kefu Chai
68769fab3d
Merge pull request #17986 from tchaikov/wip-doc-rgw-config
...
doc: fix hyper link to radosgw/config-ref
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2017-09-28 09:57:07 +08:00
Yuri Weinstein
7b042400a7
Merge pull request #17926 from batrick/ptl-tool
...
scripts: add ptl-tool for scripting merges
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Yuri Weinstein <yweins@redhat.com>
2017-09-27 15:06:10 -07:00
Adam C. Emerson
79188d679e
rgw: Check bucket GetBucketLocation in policy
...
Add code to check s3:GetBucketLocation against bucket policy.
Fixes: http://tracker.ceph.com/issues/21582
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1493934
Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2017-09-27 16:08:56 -04:00
Sage Weil
ef6524436f
os/bluestore: put attrs in mempool
...
Signed-off-by: Sage Weil <sage@redhat.com>
2017-09-27 15:49:18 -04:00
Sage Weil
937379d57a
buffer: add ptr::[try_]reassign_to_mempool
...
Signed-off-by: Sage Weil <sage@redhat.com>
2017-09-27 15:49:17 -04:00
Adam C. Emerson
27eb13fe56
rgw: Check bucket CORS operations in policy
...
Add code to check s3:GetCORS and s3:PutCORS operations against bucket
policy.
Fixes: http://tracker.ceph.com/issues/21578
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1494140
Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2017-09-27 15:42:27 -04:00
Sage Weil
d8c3756d26
osd/PG: handle racy preemption
...
If we finish recovery/backfill and go active, but also get
preempted at the same time, we can ignore the event.
Signed-off-by: Sage Weil <sage@redhat.com>
2017-09-27 15:40:18 -04:00
Sage Weil
a8534cce1a
osd/PG: allow local recovery reservations to be preempted
...
If a PG has a higher recovery priority and a lower-priority item is in
progress, allow it to be preempted. This triggers the RecoveryCancel
or BackfillCancel event with a 0 delay, which means it will immediately
re-request a reservation (and presumably wait).
Signed-off-by: Sage Weil <sage@redhat.com>
2017-09-27 15:40:18 -04:00
Sage Weil
dbc002eaa9
common/AsyncReserver: support preemption
...
If an (optional) preemption context is provided, use that to preempt
and existing reservation and grant a higher-priority one.
Signed-off-by: Sage Weil <sage@redhat.com>
2017-09-27 15:40:18 -04:00
David Zafman
14c5c834b9
ceph-objectstore-tool: performance: Add --pgid for faster search for object by name
...
Fixes: http://tracker.ceph.com/issues/21327
Signed-off-by: David Zafman <dzafman@redhat.com>
2017-09-27 12:35:41 -07:00
Adam C. Emerson
16de0fc1c5
rgw: Check bucket versioning operations in policy
...
Add code to check s3:GetBucketVersioning and s3:PutBucketVersioning
operations against bucket policy.
Fixes: http://tracker.ceph.com/issues/21389
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1490278
Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2017-09-27 14:35:59 -04:00
Adam C. Emerson
f9d1ae1d15
rgw: Check payment operations in policy
...
Add code to check s3:GetBucketRequestPayment and
s3:PutBucketRequestPayment operations against bucket policy.
Fixes: http://tracker.ceph.com/issues/21389
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1490278
Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2017-09-27 13:58:32 -04:00
Sage Weil
2237624846
Merge pull request #17978 from alram/rbdmap-fix
...
rbdmap: fix umount when multiple mounts use the same RBD
Reviewed-by: Dan Mick <dmick@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2017-09-27 12:57:33 -05:00
Patrick Donnelly
bfc4902495
mds: fix conf types
...
This correct an assertion failure.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2017-09-27 09:29:39 -07:00
Patrick Donnelly
8a5d71bf45
mds: fix whitespace
...
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2017-09-27 09:29:23 -07:00
Casey Bodley
f3e0e0171d
Merge pull request #17962 from joscollin/wip-test-signed-unsigned-warning
...
test: silence warnings from -Wsign-compare
Reviewed-by: Amit Kumar <amitkuma@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2017-09-27 10:26:49 -04:00
John Spray
f409099fa2
mgr/dashboard: sort servers and OSDs in OSD list
...
Fixes: http://tracker.ceph.com/issues/21572
Signed-off-by: John Spray <john.spray@redhat.com>
2017-09-27 15:14:58 +01:00
Jason Dillaman
16ef97830c
librbd: hold cache_lock while clearing cache nonexistence flags
...
When transitioning from a snapshot that had an associated parent
to a snapshot where the parent was flattened and removed, the cache
was being referenced without holding the required lock.
Fixes: http://tracker.ceph.com/issues/21558
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-09-27 09:40:08 -04:00
John Spray
f43859d4dc
mgr/dashboard: handle null in format_number
...
Fixes: http://tracker.ceph.com/issues/21570
Signed-off-by: John Spray <john.spray@redhat.com>
2017-09-27 14:33:58 +01:00
John Spray
409b8923a2
mgr/dashboard: remove ceph.com ref to favicon
...
We have a local copy referenced in the very next line.
Signed-off-by: John Spray <john.spray@redhat.com>
2017-09-27 14:30:07 +01:00
Yan, Zheng
e515e84f69
mds: open purge queue when transitioning out of standby replay
...
MDS opens the purge queue when it starts standby replay. This is
wrong because purge queue may change during standby replay.
Fixes: http://tracker.ceph.com/issues/19593
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
2017-09-27 21:07:36 +08:00
Yan, Zheng
82c1f5fcfd
mds: always re-probe mds log when standby replay done
...
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
2017-09-27 21:07:24 +08:00
Jason Dillaman
bc96c53d94
rbd-mirror: ensure forced-failover cannot result in sync state
...
If the local image already exists and the local image isn't
registered in the remote journal, it should be assumed that
it's already in the replaying state so it can verify the
ancestry to detect split-brains.
Fixes: http://tracker.ceph.com/issues/21559
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-09-27 08:19:21 -04:00
Jason Dillaman
e3b5831257
rbd-mirror: forced-promotion should interrupt replay delay to shut down
...
Fixes: http://tracker.ceph.com/issues/21559
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-09-27 08:19:20 -04:00
xie xingguo
076e94d0ca
osd/osd_types: kill osd_peer_stat_t
...
Which currently has no more consumers.
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-09-27 18:57:36 +08:00
Matt Boyle
3bae00a033
doc: Fix typos in placement-groups.rst
...
Signed-off-by: Matt Boyle <matt.boyle@gmail.com>
2017-09-27 11:11:23 +01:00
Jos Collin
4483bc7c61
Merge pull request #17988 from wumingqiao/wip-rados-update
...
include/rados: fix typo in librados.h
Reviewed-by: Jos Collin <jcollin@redhat.com>
2017-09-27 09:07:29 +00:00
xie xingguo
db20328b45
osd/PrimaryLogPG: kick off recovery on backoffing a degraded object
...
As we are now blocking frontend ops from accessing that very object!
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-09-27 16:58:19 +08:00
wumingqiao
99d79afe6e
include/rados: fix typo in librados.h
...
opeprate -> operate
Signed-off-by: wumingqiao <wumingqiao@inspur.com>
2017-09-27 16:31:14 +08:00
Kefu Chai
671a4106b3
doc: fix hyper link to radosgw/config-ref
...
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-09-27 11:13:35 +08:00
Zac Medico
18cbba4d2d
osd/PGPool::update: optimize with subset_of
...
Replace expensive inverval_set intersection_of and operator==
calls with a single subset_of call. I borrowed this idea from
Piotr Dałek's "osd/PGPool: don't use intermediate interval set"
patch. The following benchmark program demonstrates a 38%
performance increase:
#include <iostream>
#include <chrono>
#include "include/interval_set.h"
#define NANOSECONDS(d) \
std::chrono::duration_cast<std::chrono::nanoseconds>(d).count()
typedef uint64_t snapid_t;
typedef std::chrono::steady_clock::duration duration;
duration PGPool_update_old(const interval_set<snapid_t> &rs) {
std::chrono::steady_clock::time_point start, end;
interval_set<snapid_t> newly_removed_snaps, cached_removed_snaps;
// initialize state
cached_removed_snaps = rs;
// start timed simulation
start = std::chrono::steady_clock::now();
{
newly_removed_snaps = cached_removed_snaps;
interval_set<snapid_t> intersection;
intersection.intersection_of(newly_removed_snaps, cached_removed_snaps);
assert(intersection == cached_removed_snaps);
cached_removed_snaps.swap(newly_removed_snaps);
newly_removed_snaps = cached_removed_snaps;
newly_removed_snaps.subtract(intersection);
}
// end timed simulation
end = std::chrono::steady_clock::now();
return end - start;
}
duration PGPool_update_new(const interval_set<snapid_t> &rs) {
std::chrono::steady_clock::time_point start, end;
interval_set<snapid_t> newly_removed_snaps, cached_removed_snaps;
// initialize state
cached_removed_snaps = rs;
// start timed simulation
start = std::chrono::steady_clock::now();
{
newly_removed_snaps = cached_removed_snaps;
assert(cached_removed_snaps.subset_of(newly_removed_snaps));
interval_set<snapid_t> removed_snaps = newly_removed_snaps;
newly_removed_snaps.subtract(cached_removed_snaps);
cached_removed_snaps.swap(removed_snaps);
}
// end timed simulation
end = std::chrono::steady_clock::now();
return end - start;
}
int main(int argc, char *argv[])
{
assert(argc == 3);
const int sample_count = std::stoi(argv[1]);
const int interval_count = std::stoi(argv[2]);
const int interval_distance = 4;
const int interval_size = 2;
const int max_offset = interval_count * interval_distance;
interval_set<snapid_t> removed_snaps;
for (int i = 0; i < max_offset; i += interval_distance)
removed_snaps.insert(i, interval_size);
duration old_delta(0), new_delta(0);
for (int i = 0; i < sample_count; ++i) {
old_delta += PGPool_update_old(removed_snaps);
new_delta += PGPool_update_new(removed_snaps);
}
float ratio = float(NANOSECONDS(old_delta)) / NANOSECONDS(new_delta);
std::cout << ratio << std::endl;
}
Suggested-by: Piotr Dałek <piotr.dalek@corp.ovh.com>
Signed-off-by: Zac Medico <zmedico@gmail.com>
2017-09-26 18:33:15 -07:00
Zac Medico
5c3775815a
inverval_set: optimize subset_of with sequential search
...
Optimize subset_of to use sequential search when it
performs better than the lower_bound method, for set
size ratios smaller than 10. This is analogous to
intersection_of behavior since commit 825470fcf9
.
The subset_of method can be used in some cases as a
less-expensive alternative to the intersection_of
method, since subset_of can return early if any element
of the smaller set is not contained in the larger set,
and intersection_of has the added burden of storing
the intersecting elements.
Signed-off-by: Zac Medico <zmedico@gmail.com>
2017-09-26 17:33:35 -07:00