To get libunwind from the CR repositories until CentOS 7.2.1511 is released.
http://tracker.ceph.com/issues/13997Fixes: #13997
Signed-off-by: Loic Dachary <loic@dachary.org>
We must call on_new_interval() on any interval change *and* on the
creation of the PG. Currently we call it from PG::init() and
PG::start_peering_interval(). However, PG::split_into() did not
do so for the child PG, which meant that the new child feature
bits were not properly initialized and the bitwise/nibblewise
debug bit was not correctly set. That, in turn, could lead to
various misbehaviors, the most obvious of which is scrub errors
due to the sort order mismatch.
Fixes: #13962
Signed-off-by: Sage Weil <sage@redhat.com>
The code has a catch clause for that, but it was being rendered useless
by the preceding
if (command_spec.size() > matching_spec->size())
positional_options.add(at::POSITIONAL_ARGUMENTS.c_str(), -1);
which names all (both expected and extraneous) positional arguments.
Change it to name only expected arguments, deriving the number of
expected arguments from the length of positional_opts vector, supplied
by each action. This works for all actions except "feature enable" and
"feature disable" which are specified as multitoken, so keep on passing
in -1 for those.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Don't append an extra newline after program_options-generated errors,
like "unrecognised option" or "the argument for option is invalid".
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Fixup the exit code - the old CLI tried to differentiate between CLI
errors and action errors by returning EXIT_FAILURE in the former case.
Also remove a test that relied on a special case check in the old CLI.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Commit 4719696cad ("cmake: updates for refactored librbd IO path")
fixed file lists but missed the link dependency - librbd now needs
libjournal and libcls_journal_client.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
In get_rule_avail(), even p->second is 0, it's possible to be used
as divisor and quotient is infinity, then is converted to an integer
which is negative value.
So we should check p->second value before calculation.
It fixes BUG #13840.
Signed-off-by: Chengyuan Li <chengyli@ebay.com>
(cherry picked from commit 18713e60ed)
cretargs is a array of c_char_p, which means ctypes has already
converted it to python byte strings. decode_cstr() would misinterpret
the empty string as a NULL c_char_p(), and convert it to None by
accident, resulting in errors when running commands like
'ceph config-key put foo ""'.
Since this is the only place we use arrays of c_char_p, just decode
it directly in conf_parse_argv(). Tested with python 2 and 3.
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
(cherry picked from commit f76d5d6fe6)
Use ability to execute "osd pool rmsnap" command
as a signal that the client should be permitted
to send MRemoveSnaps too.
Note that we don't also require the W ability,
unlike Monitor::_allowed_command -- this is slightly
more permissive handling, but anyone crafting caps
that explicitly permit "osd pool rmsnap" needs to
know what they are doing.
Fixes: #13777
Signed-off-by: John Spray <john.spray@redhat.com>
The OSD expects it's pg_temp update requests to succeed. If it
races with an ill-timed admin request, it can get stuck in
WaitActingChange indefinitely.
This is only a real problem now that the OSD/mon interaction has
been updated with wip-bigbang; previously we would retry (although
it would take a while). Backporting is optional.
Signed-off-by: Sage Weil <sage@redhat.com>
The limit, -j8, may seem arbitrary but works nicely in the openSUSE Build
Service.
http://tracker.ceph.com/issues/13858Fixes: #13858
Signed-off-by: Nathan Cutler <ncutler@suse.com>
ceph_test_msgr: Use send_message instead of keepalive to wakeup connection
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
If we race with a reconnect we could get a second notify message
before the notify linger op is torn down. Ensure we only ever
call the notify completion once to prevent a segfault.
Fixes: #13805
Signed-off-by: Sage Weil <sage@redhat.com>