Venky Shankar
bbbfb44453
pybind / cephfs: remove static typing in LibCephFS.chown
...
The routine does type checking anyway, plus, to be uniform
with other APIs.
Fixes: http://tracker.ceph.com/issues/42923
Signed-off-by: Venky Shankar <vshankar@redhat.com>
2019-11-20 23:23:09 -05:00
Sage Weil
07193aec3a
qa/standalone/test_ceph_daemon.sh: remove old vg before creating
...
Signed-off-by: Sage Weil <sage@redhat.com>
2019-11-20 18:27:31 -06:00
Sage Weil
fd6bfad498
qa/standalone/test_ceph_daemon.sh: sudo for untar
...
The deepsea.tgz tar contains actual device nodes for the OSD block devices
(not symlinks or files). Must be root to untar.
Signed-off-by: Sage Weil <sage@redhat.com>
2019-11-20 18:27:31 -06:00
Sage Weil
723fdb111a
qa/standalone/test_ceph_daemon.sh: sudo for losetup etc
...
Signed-off-by: Sage Weil <sage@redhat.com>
2019-11-20 18:27:31 -06:00
Sage Weil
cb67545e99
qa/standalone/test_ceph_daemon.sh: fix overwrites of temp files
...
mktemp creates these files, so we have to pass --allow-overwrite (or
delete them after we get the unique name but before we write to them--this
is easier).
Broken by c7fe27a72a
Signed-off-by: Sage Weil <sage@redhat.com>
2019-11-20 18:27:31 -06:00
Patrick Donnelly
e4b3036422
Merge PR #31418 into master
...
* refs/pull/31418/head:
test: use distinct subvolume/group/snapshot names
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
2019-11-20 15:34:02 -08:00
Patrick Donnelly
5a0fa12513
Merge PR #30553 into master
...
* refs/pull/30553/head:
qa/tasks: check if fs mounted in umount_wait
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2019-11-20 15:31:33 -08:00
Patrick Donnelly
23a15c9be4
Merge PR #31534 into master
...
* refs/pull/31534/head:
mds: fix invalid access of mdr->dn[0].back()
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2019-11-20 15:26:09 -08:00
Patrick Donnelly
e799c2533c
Merge PR #31548 into master
...
* refs/pull/31548/head:
mds: properly evaluate unstable locks when evicting client
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2019-11-20 15:24:56 -08:00
Patrick Donnelly
6a55fd1106
Merge PR #31531 into master
...
* refs/pull/31531/head:
cmake: link ceph-fuse against librt
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-11-20 14:55:42 -08:00
Ilya Dryomov
6fb544045e
qa: kernel.sh: update for read-only changes
...
Snapshot existence validation code was removed from krbd. It was racy
and relied on having watch established for snapshots.
Fixes: https://tracker.ceph.com/issues/42916
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2019-11-20 21:32:45 +01:00
Radoslaw Zarzynski
ea78fa29ae
crimson: avoid seastar::do_with() due to performance reasons.
...
`seastar::do_with(T&& rvalue, F&& f) takes object for lifetime
extension by rvalue reference. This imposes materialization of
a temporary to move from even when `do_with()` is being called
like:
`do_with(OpsExecuter{...}, [] { /* ... */)`.
The reason behind that is following language rule:
"Temporary objects are created when a prvalue is materialized
so that it can be used as a glvalue, which occurs (since C++17)
in the following situations:
* binding a reference to a prvalue"
(from: "Temporary object lifetime", cppreference.com)
As OpsExecuter is pretty heavy-weight, it is reasonable to avoid
`do_with()` and perform the lifetime extension with smart pointer.
Additional benefit is squeezing plain-to-errorated conversion in
`seastar::internal::do_with_state::get_future()`.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:45 +01:00
Radoslaw Zarzynski
f039e3a9d7
crimson: OpsExecuter::submit_changes() operates on errorated future.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:45 +01:00
Radoslaw Zarzynski
bc61111bd0
crimson: introduce make_exception_future to errorator.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:45 +01:00
Radoslaw Zarzynski
86dd0e1570
crimson: drop extra copy in errorator's appliance.
...
Save few unneeded instructions on the read path. I expect
negligible impact on performance. The patch is rather for
easier reading of assembler.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:45 +01:00
Radoslaw Zarzynski
60bceaba7f
crimson: dissect error handling path from ::safe_then().
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:44 +01:00
Radoslaw Zarzynski
648e61b874
crimson: drop ceph::do_with(). Specialize sestar::do_with() instead.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:44 +01:00
Radoslaw Zarzynski
01fff77895
crimson: specialize seastar::futurize to avoid copying.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:44 +01:00
Radoslaw Zarzynski
3e621e4e1b
crimson: _load_{os,ss} return errorated future to avoid copying.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:44 +01:00
Radoslaw Zarzynski
dc09e1a130
crimson: drop as_plain_future() from errorated futures.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:44 +01:00
Radoslaw Zarzynski
ae83ae6b68
crimson: replace make_plain_exception_future() with errorize{}.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:44 +01:00
Radoslaw Zarzynski
4f042c9bfb
crimson: clean-up errorator's error set checks.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:44 +01:00
Radoslaw Zarzynski
d74f26363a
crimson/osd: apply errorator along the stat path.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:43 +01:00
Radoslaw Zarzynski
213c631c06
crimson: introduce passing-further variant of safe_then() to errorator.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:43 +01:00
Radoslaw Zarzynski
3e0ae6c077
crimson/osd: switch small occurances of throwing to errorator.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:43 +01:00
Radoslaw Zarzynski
e3763c2ae9
crimson/osd: apply errorator along the get_object_state() path.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:43 +01:00
Radoslaw Zarzynski
362ab5b7ce
crimson: avoid plainifying/errorating in crimson::for_for_each().
...
We don't want to convert between `errorator::future` and
`seastar::future` back and forth due to performance penalty.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:43 +01:00
Radoslaw Zarzynski
7b8148ecf9
crimson: implement ceph::do_{for_each(),do_with()} helpers.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:43 +01:00
Radoslaw Zarzynski
bc4ef4bfed
crimson/osd: apply errorator to op-taking PGBackend::getxattr().
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:43 +01:00
Radoslaw Zarzynski
d191d4ea12
crimson/osd: apply the errorator along execute_osd_op() path.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:42 +01:00
Radoslaw Zarzynski
db5479d2ee
crimson/osd: delegate executing osd op in objclass.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:42 +01:00
Radoslaw Zarzynski
c28d142356
crimson: add support for unificating errorators into compounds.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:42 +01:00
Radoslaw Zarzynski
055291fab8
crimson: deduplicate errorator's error set.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:42 +01:00
Radoslaw Zarzynski
cc49a9e82f
crimson: use std::error_code instances for errors.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:42 +01:00
Radoslaw Zarzynski
ee2eaeb2dd
crimson: unthrowable_wrapper::handle() accepts type-taking lambda.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:42 +01:00
Radoslaw Zarzynski
d8d0ab1a69
crimson/osd: erroratorize the do_op_call() path more.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:42 +01:00
Radoslaw Zarzynski
7a1eb3d4c5
crimson/osd: apply errorator to do_op_call() path.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:41 +01:00
Radoslaw Zarzynski
b148bdbeec
crimson: introduce make_plain_exception_future() to errorator.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:41 +01:00
Radoslaw Zarzynski
bf49cc7ffc
crimson: introduce stateful errors to errorator.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:41 +01:00
Radoslaw Zarzynski
1221b899b0
crimson/osd: handle attr retrieval errors with all_same_way().
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:41 +01:00
Radoslaw Zarzynski
de325ade55
crimson: introduce all_same_way() to errorator.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:41 +01:00
Radoslaw Zarzynski
69d6de77ed
crimson: don't allocate exception_ptr when returning error code.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:41 +01:00
Radoslaw Zarzynski
85d96eeb50
crimson: formalize the interface between errors and errorators.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:41 +01:00
Radoslaw Zarzynski
12c96d6d0b
crimson/osd: apply errorator along the read path, part 5.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:40 +01:00
Radoslaw Zarzynski
847f1785c2
crimson: rework discarding errors in errorator.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:40 +01:00
Radoslaw Zarzynski
dca575992b
crimson: introduce syntactic sugar for visiting errorator.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:40 +01:00
Radoslaw Zarzynski
3b2abb1b69
crimson: migrate make_error<T> to unthrowable_wrapper.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:39 +01:00
Radoslaw Zarzynski
b7fec28cf7
crimson: abstract the error type in unthrowable_wrapper.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:29 +01:00
Radoslaw Zarzynski
abbfd9ba88
crimson: decouple errorator from unthrowable_wrapper.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:29 +01:00
Radoslaw Zarzynski
a0c71e0825
crimson: decouple errorator from unthrowable_wrapper::instance.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-11-20 20:37:28 +01:00