Jason Dillaman
c5697d3c69
librbd: permit cross-namespace when using clone v2
...
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:05:29 -04:00
Jason Dillaman
8209789dc3
librbd: use helper method to create librados::IoCtxs
...
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:05:29 -04:00
Jason Dillaman
625ac30e69
librbd: replace librbd::ParentSpec with cls::rbd::ParentImageSpec
...
The newer struct includes support for pool namespaces.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:05:29 -04:00
Jason Dillaman
4c6132b676
librbd: invoke new parent class API methods
...
If the OSDs don't support the new methods, revert to the legacy
class API methods.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:05:29 -04:00
Jason Dillaman
6141039a7a
librbd: replace existing attach parent calls with new state machine
...
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:05:29 -04:00
Jason Dillaman
ab6f5437fc
librbd: new attach parent state machine
...
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:05:29 -04:00
Jason Dillaman
6949adba21
librbd: replace existing detach parent calls with new state machine
...
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:05:29 -04:00
Jason Dillaman
ff4a9c581a
librbd: new detach parent state machine
...
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:05:28 -04:00
Jason Dillaman
82b296e349
librbd: refactor flatten state machine to new code style
...
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:04:12 -04:00
Jason Dillaman
b2cfe353c4
librbd: add new namespace compatible parent image cls methods
...
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:04:12 -04:00
Jason Dillaman
32b14ed1a4
librbd: break cls_rbd_snap on-disk struct backwards compatability
...
The cls methods are now storing normalized parent overlaps within the snapshot
if the OSDs are required to be Nautilus or later. Therefore, we can safely
break the on-disk format compatibility for those newer OSDs.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:04:12 -04:00
Jason Dillaman
95b02b9460
librbd: migrate legacy snapshot on-disk format to normalized parent
...
The parent reference should be written once under the "parent" key,
so all updates to a snapshot should ensure the new normalized format
is used if Nautilus or later OSDs are required.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:04:12 -04:00
Jason Dillaman
9163112989
librbd: cls_rbd_snap on-disk struct supports parent overlap
...
This is the first step to fix the denormalization of the parent
image spec references between the HEAD revision and the snapshot
revisions.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:04:12 -04:00
Jason Dillaman
9d83bfd64d
librbd: cls_rbd_parent on-disk struct supports namespaces
...
If the OSDs are required to be Nautilus or later, it will automatically break
backwards compatibility of the structure to support pool namespaces.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:04:12 -04:00
Jason Dillaman
70ae1cbc46
librbd: ChildImageSpec now optionally includes child pool namespace
...
It will break version compatibility if used against older OSDs that
don't support RBD pool namespace support.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:04:12 -04:00
Jason Dillaman
aa08323409
librbd: new ParentImageSpec type to support parent namespaces
...
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:04:12 -04:00
Jason Dillaman
f76df32666
librbd: break composite cls rbd helpers into individual helpers
...
With the forthcoming need to use new methods to retrieve a clone's parent,
use per-method helpers to invoke the correct method within the image
refresh state machine.
Also used this time to merge newer cls rbd methods that should be supported
by all non-EOLed OSDs.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:04:12 -04:00
Jason Dillaman
e339bb763f
librbd: corrected namespace indentation within cls_client
...
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:04:12 -04:00
Jason Dillaman
3b8f4f136b
test/librbd: not valid to have different parents between image snapshots
...
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:04:12 -04:00
Jason Dillaman
d592c865b9
objclass: expose the required OSD release setting
...
This can be utilized to determine when it's safe to enable new
cls features.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2018-09-19 08:04:12 -04:00
Kefu Chai
c1bff2684f
Merge pull request #24076 from ifed01/wip-ifed-fix-repairer
...
os/bluestore: fix bloom filter num entry miscalculation in repairer
Reviewed-by: Sage Weil <sage@redhat.com>
2018-09-19 18:03:21 +08:00
Kefu Chai
374931d210
Merge pull request #24085 from liewegas/wip-32731
...
osd/osd_types: fix pg_t::contains() to check pool id too
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-09-19 18:02:13 +08:00
Kefu Chai
1c5f2cca66
Merge pull request #23721 from batrick/log-entry-stack
...
log: avoid heap allocations for most log entries
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2018-09-19 18:01:06 +08:00
Kefu Chai
58a08c6d4e
Merge pull request #24111 from gregsfortytwo/wip-35987-connection-buffers
...
msg/async: clean up local buffers on dispatch
Reviewed-by: Haomai Wang <haomai@xsky.com>
2018-09-19 17:56:58 +08:00
Kefu Chai
184e200110
Merge pull request #24124 from tchaikov/wip-35969
...
rpm: use updated gperftools
Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
2018-09-19 17:55:51 +08:00
Josh Durgin
2d79537236
doc/dev/index: update rados lead
...
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2018-09-19 00:26:13 -07:00
Laura Paduano
46d55fcbaf
Merge pull request #23754 from p-na/down-osd-raises-error
...
mgr/dashboard: Fix OSD down error display
Reviewed-by: Volker Theile <vtheile@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
Reviewed-by: Lenz Grimmer <lgrimmer@suse.com>
2018-09-19 08:56:33 +02:00
xie xingguo
90eda153f3
osd/PG: explicitly clear num_objects_missing when approximate
...
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2018-09-19 12:07:15 +08:00
xie xingguo
ab241bf7e9
osd/PG: async-recovery should respect historical missing objects
...
Peers with async-recovery enabled are usually having a update-to-date
last-update iterator and hence might be moved out from the __async_recovery_targets__
set during the next peering circles.
7de35629f5
makes num_objects_missing
trace historical missing objects correctly, hence we could take
num_objects_missing into account when determing __async_recovery_targets__.
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2018-09-19 12:06:01 +08:00
Sage Weil
7591ccd718
Merge PR #24098 into master
...
* refs/pull/24098/head:
Rename "include/assert.h"
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2018-09-18 17:24:12 -05:00
Sage Weil
d0c4042194
unittest_bufferlist: add unit test for sha1 from multiple raw buffers
...
Signed-off-by: Sage Weil <sage@redhat.com>
2018-09-18 13:05:15 -05:00
Sage Weil
b2a9c6082d
Merge PR #24112 into master
...
* refs/pull/24112/head:
osd: avoid unncecessary ref-counting in OSD::enqueue_op.
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Sage Weil <sage@redhat.com>
2018-09-18 11:57:27 -05:00
Sage Weil
4d905d5d29
qa/workunits/mon/caps.sh: wait longer to time out
...
5s -> 5m to gives us more leeway for when the mons are thrashing.
Also, *only* set this timeout when we expect a timeout. If we don't,
wait forever.
Signed-off-by: Sage Weil <sage@redhat.com>
2018-09-18 08:57:25 -05:00
Kefu Chai
3c2004c0ac
Merge pull request #24090 from cbodley/wip-crimson-concurrent-dispatch
...
crimson/net: concurrent dispatch for SocketMessenger
Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-09-18 21:21:41 +08:00
Sage Weil
5940487be3
qa/workunits/cephtool/test_kvstore_tool.sh: run test in ., not /tmp
...
Notably, we can't make a bluestore store on a tmpfs.
Signed-off-by: Sage Weil <sage@redhat.com>
2018-09-18 07:39:05 -05:00
Sage Weil
69edc10568
Merge PR #24092 into master
...
* refs/pull/24092/head:
mgr: Change signature of PyString_AsString to match return
Reviewed-by: John Spray <john.spray@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-09-18 07:10:40 -05:00
Sage Weil
359f6efe9b
Merge PR #24057 into master
...
* refs/pull/24057/head:
src/common: add a unit test (bufferlist.sha1())
osd, src/common: return sha1 value if zero-length buffer.
src/common/buffer.cc: remove unnecessary copy in sha1()
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2018-09-18 07:10:21 -05:00
Sage Weil
62bad1b987
Merge PR #24072 into master
...
* refs/pull/24072/head:
osd/PG: kill __queue_query__
osd/OSD: deprecate __project_pg_history__
Reviewed-by: Sage Weil <sage@redhat.com>
2018-09-18 07:09:52 -05:00
Sage Weil
5cd067b16b
Merge PR #24104 into master
...
* refs/pull/24104/head:
mgr/diskprediction: add prototype diskprediction module
Reviewed-by: John Spray <john.spray@redhat.com>
2018-09-18 07:08:05 -05:00
Lenz Grimmer
d8a4b4bf47
Merge pull request #24103 from b-ranto/wip-dashboard-http
...
mgr/dashboard: Do not require cert for http
Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Sebastian Wagner <swagner@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
2018-09-18 13:40:54 +02:00
Lenz Grimmer
2d02d5c9eb
Merge pull request #24015 from ricardoasmarques/wip-update-selection-on-refresh
...
mgr/dashboard: More configs for table `updateSelectionOnRefresh`
Reviewed-by: Kanika Murarka <kmurarka@redhat.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
2018-09-18 11:02:43 +02:00
Boris Ranto
035b3a8b33
mgr/dashboard: Rename SSLCherryPyConfig
...
The class does not always set up SSL, dropping the SSL bit.
Fixes: http://tracker.ceph.com/issues/36069
Signed-off-by: Boris Ranto <branto@redhat.com>
2018-09-18 10:49:01 +02:00
Boris Ranto
20ed0de477
mgr/dashboard: Do not require cert for http
...
The ceph dashboard currently requires a SSL certificate even if it is
not running in the SSL mode since it is always querying for the
certificate file/key pair.
This patch fixes the behaviour by querying for the certificate file/key
only if it is running in the SSL mode.
Fixes: http://tracker.ceph.com/issues/36069
Signed-off-by: Boris Ranto <branto@redhat.com>
2018-09-18 10:48:51 +02:00
Josh Durgin
202b27363d
Merge pull request #24031 from rzarzynski/wip-common-bl-drop-0c
...
common: drop the unused zero-copy facilities in ceph::bufferlist
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2018-09-17 13:48:41 -07:00
Patrick Donnelly
7da1e283cd
Merge PR #24120 into master
...
* refs/pull/24120/head:
doc: Fix Typos of Developer Guide
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2018-09-17 11:10:15 -07:00
Mykola Golub
5fc71af857
Merge pull request #24105 from dillaman/wip-24516
...
librbd: object map improperly flagged as invalidated
Reviewed-by: Mykola Golub <mgolub@suse.com>
2018-09-17 20:31:36 +03:00
Matt Benjamin
9cfdf3d7e8
Merge pull request #23981 from cbodley/wip-35830
...
rgw: raise debug level on redundant data sync error messages
2018-09-17 11:26:50 -04:00
Kefu Chai
5bcc179bc4
rpm: bump up required GCC version to 7.3.1
...
so we can include the fix of
https://gcc.gnu.org/ml/libstdc++/2017-07/msg00077.html and the fix at
7c78f2e672
. otherwise, if a class offers implicit conversion operator to
std::string and std::string_view, seastar will fail to compile. like
/opt/rh/devtoolset-7/root/usr/include/c++/7/bits/basic_string.h:3946:7:
note: candidate: std::basic_string<_CharT, _Traits, _Alloc>&
std::basic_string<_CharT, _Traits, _Alloc>::operator+=(const
std::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char;
_Traits = std::char_traits<char>; _Alloc = std::allocator<char>]
operator+=(const basic_string& __str)
^~~~~~~~
/opt/rh/devtoolset-7/root/usr/include/c++/7/bits/basic_string.h:3988:7:
note: candidate: std::basic_string<_CharT, _Traits, _Alloc>&
std::basic_string<_CharT, _Traits,
_Alloc>::operator+=(std::basic_string<_CharT, _Traits,
_Alloc>::__sv_type) [with _CharT = char; _Traits =
std::char_traits<char>; _Alloc = std::allocator<char>;
std::basic_string<_CharT, _Traits, _Alloc>::__sv_type =
std::basic_string_view<char>]
operator+=(__sv_type __sv)
^~~~~~~~
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-09-17 22:51:26 +08:00
Kefu Chai
338612ad88
Merge pull request #24088 from dzafman/wip-35982
...
qa/standalone: Standalone test corrections
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-09-17 22:35:43 +08:00
Radoslaw Zarzynski
b71cbb97b7
common: get_data() of buffer_raw isn't virtual anymore.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-09-17 15:34:33 +02:00