This adds singleton tests of rgw to crimson. In classical OSD both
ubuntu and centos build are supported. However the crimson OSD only
provide centos build so cannot symlink all the files directly.
Instead of linking entire subdirectories the crimson suite uses
selective symlinks for the required yaml files.
Fixes: https://tracker.ceph.com/issues/73947
Signed-off-by: Kautilya Tripathi <kautilya.tripathi@ibm.com>
load_obc() taking an already-resolved loaded_object_md_t::ref is
synchronous, because it just populates obc state, it does yield.
Returning an errorated future was unnecessary and caused a
-Wunused-result warning at its only call site:
ECRecoveryBackend::maybe_load_obc().
In this change, we change it to return void and deduplicate the OBC
population logic: the private async overload (taking future<md_ref>)
now validates ssc and returns object_corrupted on failure.
This silences the warning, and simpler this way. The async error
propagation is preserved.
Signed-off-by: Kefu Chai <k.chai@proxmox.com>
Note: when using 'final', the compiler *does not*
check that the function is actually overriding a base
class function.
Using only 'override' wherever the class itself is
already marked 'final', 'override final' otherwise.
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
crimson/os/seastore/object_data_handler: make sure continuous object data blocks are loaded with a single io request
Reviewed-by: Samuel Just <sjust@redhat.com>
The $() notation not only calls the function, it also creates subshell,
which is a separate process. Additionally in debug mode all the content
of the function get_asok_path is printed out in the logs each time
whenever it is called, for example:
...stderr://home/ubuntu/cephtest/clone.client.0/qa/standalone/ceph-helpers.sh:552: run_mgr: get_asok_path
...stderr://home/ubuntu/cephtest/clone.client.0/qa/standalone/ceph-helpers.sh:107: get_asok_path: local name=
...stderr://home/ubuntu/cephtest/clone.client.0/qa/standalone/ceph-helpers.sh:108: get_asok_path: '[' -n '' ']'
...stderr:///home/ubuntu/cephtest/clone.client.0/qa/standalone/ceph-helpers.sh:111: get_asok_path: get_asok_dir
...stderr:///home/ubuntu/cephtest/clone.client.0/qa/standalone/ceph-helpers.sh:99: get_asok_dir: '[' -n '' ']'
...stderr:///home/ubuntu/cephtest/clone.client.0/qa/standalone/ceph-helpers.sh:102: get_asok_dir: echo /tmp/ceph-asok.48301
...stderr://home/ubuntu/cephtest/clone.client.0/qa/standalone/ceph-helpers.sh:111: get_asok_path: echo '/tmp/ceph-asok.48301/$cluster-$name.asok'
Instead of calling get_asok_path each time we need to define osd.0,
etc. asok file path, we just predefine corresponding variables.
It not only avoids extra resource usage, but also removes a lot of
noise from the logs.
Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@clyso.com>
When graph walks is complete, it will actually be possible link to
supported without repeating the links. The matrix implementation doesn't
support this.
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
The local variable `smp` is used only in the two immediately following
statements. Inline the fmt::format() call into emplace_back() and pass
reactor_num directly to the logger.
Signed-off-by: Kefu Chai <k.chai@proxmox.com>
The helper is an implementation detail of get_early_args() and
get_ceph_args(). Making it private prevents callers from inadvertently
holding the returned const char* pointers past the lifetime of the
input vector. Also fix the truncated doc-comment ("must not outlive in").
Signed-off-by: Kefu Chai <k.chai@proxmox.com>
The header was included twice in main_config_bootstrap_helpers.cc.
The second inclusion is redundant due to #pragma once.
Signed-off-by: Kefu Chai <k.chai@proxmox.com>
test: Fix gcc warnings about subobject-linkage in ceph_test_rados_io_sequence
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Alex Ainscow <aainscow@uk.ibm.com>
Reviewed-by: Bill Scales <bill_scales@uk.ibm.com>