We observed that the WBThrottle perfcounters are leaking upwards
at a rate of around 50-100 ios_dirtied per day. The counters are
currently not decremented in clear_object, so that's the likely
explanation. Decrement them like elsewhere in WBThrottle.
Signed-off-by: Dan van der Ster <daniel.vanderster@cern.ch>
Patch up the CRUSH map compatibility guards
Reviewed-by: Loic Dachary <loic@dachary.org>
Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
Reviewed-by: Sage Weil <sage@redhat.com>
When we change the tunables, or set a new CRUSH map, we need to make sure it's
supported by all the monitors and OSDs currently participating in the cluster.
Fixes: #8738
Signed-off-by: Greg Farnum <greg@inktank.com>
We need to see if there's a feature which is not in the quorum_features,
not if there are no features in common!
Signed-off-by: Greg Farnum <greg@inktank.com>
Introduce a 'refs' subsys for logging. Print log ref count inc and dec
for any RefCountedObject that gets a cct passed to its ctor.
Signed-off-by: Sage Weil <sage@inktank.com>
If the test is run against a cluster started with vstart.sh (which is
the case for make check), the --asok-does-not-need-root disables the use
of sudo and allows the test to run without requiring privileged user
permissions.
Signed-off-by: Loic Dachary <loic@dachary.org>
(cherry picked from commit 522174b066)
mon: OSDMonitor: 'osd pool' - if we can set it, we must be able to get it
Reviewed-by: Loic Dachary <loic@dachary.org>
Reviewed-by: Sage Weil <sage@redhat.com>
With clang warning: 'va_start' has undefined behavior with reference
types, noticing copy-paste mistake on ceph_argparse_flag.
Signed-off-by: Thorsten Behrens <tbehrens@suse.com>
The assert was hitting while OSd is waiting for becoming healthy
in handle_osd_map(). This can happen while io is going on and
OSDs are made down forcefully by say osd thrash command.
So, the fix could be instead of asserting just return from here.
Fixes: #8646
Signed-off-by: Somnath Roy <somnath.roy@sandisk.com>
Add support to get the values for the following variables:
- target_max_objects
- target_max_bytes
- cache_target_dirty_ratio
- cache_target_full_ratio
- cache_min_flush_age
- cache_min_evict_age
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
In the get_object_context(), the get_snapset_context is been called
and the register_snapset_context is already been invoked from there.
This call seems to be redundant.
Signed-off-by: Somnath Roy <somnath.roy@sandisk.com>
mark_event() interfaced changed to accept time and it is default
to 'now'. The mark_event is the wrapper function of _mark_event()
and it has the check for optracking enabled/disabled as well.
The _mark_event() is now a private function.
Signed-off-by: Somnath Roy <somnath.roy@sandisk.com>
Avoid possibility that we create multiple OSDs do to retries by passing in
the optional uuid arg. (A stray osd id will make the osd tell tests a
few lines down fail.)
Fixes: #8728
Signed-off-by: Sage Weil <sage@inktank.com>
It doesn't make sense to warn about slow requests on OSDs that are down;
clear those stats in the monitor when we see an OSD go down (or up).
Fixes: #8692
Signed-off-by: Sage Weil <sage@inktank.com>
Apply some accidentally-dropped commits from the wip-fs-cmds branch to be a little friendlier and pass tests.
Reviewed-by: Greg Farnum <greg@inktank.com>