the proble breaks `test_mon_deprecated_commands` on ubuntu precise,
on the python shipped with ubuntu precise, errno.errorcode[95]
evalutes to `EOPNOTSUPP` but not `ENOTSUP`. but these two errnos
are equal in glibc.
Signed-off-by: Kefu Chai <kchai@redhat.com>
This required creating an Object type which is a pair of strings an
object id and object namespace. Functionally, nothing has changed
with regards to the bench and cleanup command semantics. Those
commands still allow operation in the default or a specified namespace.
Fixes: #12262
Signed-off-by: David Zafman <dzafman@redhat.com>
"rewrite" command will
- add a new osdmap version to update current osdmap held by OSDMonitor
- add a new paxos version, as a proposal it will
* rewrite all osdmap epochs from specified epoch to the last_committed
one with the specified crush map.
* add the new osdmap which is added just now
so the leader monitor can trigger a recovery process to apply the transaction
to all monitors in quorum, and hence bring them back to normal after being
injected with a faulty crushmap.
Fixes: #11815
Signed-off-by: Kefu Chai <kchai@redhat.com>
The output doesn't indent correctly without this fix. Right align the df
stats with their headers. Before this change some of them are 1
character off, and with a strange 'category' column.
Signed-off-by: Zhiqiang Wang <zhiqiang.wang@intel.com>
When running 3 mons, vstart uses ports starting from CEPH_PORT=7202 and
increments to 7203 for the second mon and 7204 for the third. Add a
comment showing the port number. The method for a test to figure out
which port is free is to grep for the port and if nothing matches, use
it. The grep will match 7204 and 7203 and 7202 from the comment and
reduce the chances of someone using 7203 because it was nowhere to be
found in the sources.
Signed-off-by: Loic Dachary <ldachary@redhat.com>
Don't simply put() a reference if it has gone unclaimed without
get()'ing it first. This can cause nefarious consequences for those
users of MForward that do not expect this to happen.
Signed-off-by: Joao Eduardo Luis <joao@suse.de>
When we introduced the MonOpRequest in the monitor and moved pretty much
every single function receiving messages in their arguments to take op
requests, we basically lost the type safety that was guaranteed from
Monitor::dispatch().
This patch adds an op_type field to the op request, as an easy fix for
this now lacking safety.
Signed-off-by: Joao Eduardo Luis <joao@suse.de>
The services are now fully using MonOpRequest and should stay that way.
Drop PaxosService-specific reply functions as we want nothing to do with
them :)
Signed-off-by: Joao Eduardo Luis <joao@suse.de>
Op Requests should have no business replying to messages. Besides,
given the Monitor is currently the place to do this, because it is the
one with access to all things that may be required to validate state
(e.g., quorum features), permanently moving this code to the Monitor
class also avoid having duplicate/very similar code in two distinct
places.
Signed-off-by: Joao Eduardo Luis <joao@suse.de>