... of fs subvolumes and subvolume groups during their creation.
Fixes: https://tracker.ceph.com/issues/40299
Signed-off-by: Ramana Raja <rraja@redhat.com>
... of fs subvolumes and subvolume groups during their creation.
Fixes: https://tracker.ceph.com/issues/40431
Signed-off-by: Ramana Raja <rraja@redhat.com>
With the various threads and conditional IO paths within librbd, it was
possible for external AIO callbacks to be concurrently executed from
different librbd threads. These callbacks should be serialized to reduce
the unexpected potential for data corruption.
Fixes: http://tracker.ceph.com/issues/40417
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Added unittest_seastar_socket to make sure that seastar network layer
works as expected.
Added missing error code invalid_argument and address_in_use.
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
Cleaning up after aborting unfinished multipart uploads is a
best-effort process. Due to the history of the multipart upload, not
all components may be found and the process needs to be robust to
that.
Presently, if a component is not found after the final call to
list_bucket_multiparts, the error propogates to the caller, but not if
the component is not found in an earlier call. This change does not
propogate that error up ever.
Additional logging is also added to multipart-related functions.
Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
this case introduces multiple quotes in caps line
it will trigger the bug like http://tracker.ceph.com/issues/22227
Signed-off-by: Gu Zhongyan <guzhongyan@360.cn>
since config parser bails out at seeing the first error, there is no
need to offer the interfaces to report multiple errors.
Signed-off-by: Kefu Chai <kchai@redhat.com>
before this change, the ceph.conf parser was implemented using a
hand-written state machine. which works fine. but it's hard to
understand and hence difficult to maintain.
in this change, it's rewritten using boost::spirit. which well, is also
a state machine under the hood, but the declarative pattern matching
rules help the human readers to understand the machinary.
before this change, the state machine is able to skip the lines with
invalid syntax and spit a warning message for each of them. after this
change, the parser will just bail out when it fails to match the rules.
and the line continuation marker, i.e., "\" is simply skipped, so it's
allowed to have nothing after the backslash in the value of key-value
pair.
changes are listed as following:
* invalid UTF-8 key/value is now treated as an error
* backslash at the very end is now allowed
* repeated settings are tolerated, and no warnings will be printed.
the last one wins. before this change, we will print out warning
messages at seeing lines with duplicated keys.
* malformed section header is now an error
* a setting line which does not parse is now an error
* unmatched quotes in setting value is now an error
* "\" following an empty line is allowed now.
* the format of error message is changed, so the cli test is updated
accordingly.
* [global] section is not added by default. unless there is a single
line in the conf file. this is only for the convenience of testing.
Signed-off-by: Kefu Chai <kchai@redhat.com>
osd/PG: do not queue scrub if PG is not active when unblock
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Both pg creation and advance_pg_to process statemachine events and
therefore need to be under the pg process pipeline stage.
Signed-off-by: Samuel Just <sjust@redhat.com>
- add new status to OpenImageRequest, including
send_parent_cache and handle_parent_cache.
- refine re-connect to remove race condition.
- fixed read error bug
Signed-off-by: Dehao Shang <dehao.shang@intel.com>