rgw/rgw_op.cc: In member function 'virtual void
RGWCompleteMultipart::execute()':
rgw/rgw_op.cc:3133:27: warning: comparison between signed and unsigned
integer expressions [-Wsign-compare]
if (parts->parts.size() > s->cct->_conf->rgw_multipart_part_upload_limit) {
Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
Implement the following scenario:
* create an erasure coded pool and write an object
* mark two osd used to store the object out
* wait until the PG is clean
* read the object and compare it with the original
* mark the two osd back in
* wait until the PG is clean
* read the object and compare it with the original
The scenario is run with the jerasure plugin only because the code path
involved does not vary depending on the erasure code plugin.
http://tracker.ceph.com/issues/11667Fixes: #11667
Signed-off-by: Loic Dachary <ldachary@redhat.com>
Modify the test traces to include the file name in addition to the
function and line name. It makes it easier to locate the faulty line
without going back to the test name.
Format the trace lines to be emacs friendly (filename:lineno) so that
C-x ` or C-c C-c jumps to the right file and the right line when running
the test with M-x compile.
Signed-off-by: Loic Dachary <ldachary@redhat.com>
Fixed shec's recovery issues caused by unexpected arguments in
minimum_to_decode() / decode() functions.
We misunderstood as follows.
(1) want_to_read and available_chunks do not share osds.
(2) osds that are not included in want_to_read are always included
in available_chunks.
Signed-off-by: Takanori Nakao <nakao.takanori@jp.fujitsu.com>
When a test fails, the script returns immediately and kill_daemon
function is called to cleanup. It is quite verbose and requires
scrolling hundreds of lines back to find the actual error
message. Turn off the shell trace to reduce the verbosity and improve
error output readability.
The kill_daemon cannot just turn off set -x because it may be called by
a test, not just at the end of the run. Instead the kill_daemon function
checks if tracing is activated and temporarily disables it.
Also get rid of the find standard error that commonly happens when
kill_daemon is called to verify there are no leftovers and the test
directory does not exist.
Signed-off-by: Loic Dachary <ldachary@redhat.com>
For get_duration(), it should return the duration of Op. For ops which in
flight, the duration is the time current time subtrace the
initiated_time. For the completed Ops, it used the last event(done)
subtrace the initiated_time.
Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
Fixes: #12079
Broken multipart objects: multipart objects that created on 0.94.2
and that start with underscore have a bad locator on their tail objects.
This extends the tool that was needed for older issue we've had with
hammer multipart objects (that start with underscore). The same usage
applies:
$ radosgw-admin bucket check --check-head-obj-locator \
--bucket=<bucket> [--fix]
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
* this change fixes the warning from clang:
ErasureCodeJerasure::parse' hides overloaded virtual function
[-Woverloaded-virtual]
* some erasure codecs' ErasureCode::parse() rewrites the profile
using the default values when parsing it if the corresponding
items are not specified. and we don't call ErasureCode::parse()
via its children's references. so no need to make it a virtual
function.
* and ErasureCode::parse() is used as a helper function by its
children, so make it `protected`
* and parse() in ErasureCode's children is but a helper function
called by ctor, descendants' parse() and init(). so make them
protected or private accordingly.
Signed-off-by: Kefu Chai <kchai@redhat.com>