The auth needs to move to MIX_STALE for the same reasons a replica does:
if, on scatter, any dirfrags have an old accounted_*stat, the lock needs to
be marked stale (or updated... TODO!).
Signed-off-by: Sage Weil <sage@newdream.net>
Include hostname and pid in object name, so that instances running on
different hosts write to unique objects.
Signed-off-by: Sage Weil <sage@newdream.net>
We want to enable the new snap stuff by default. But we also want to work
with the default configuration on old kernels.
The only downside here is that someone might explicitly enable it, only to
have it disabled on started because their kernel is old. They'll get a
bright yellow warning in that case, at least.
Signed-off-by: Sage Weil <sage@newdream.net>
Logrotate seems to ignore the entire rule if any part of the file list
is not found. This happens on nodes with only monitors.
Signed-off-by: Sage Weil <sage@newdream.net>
Create test_unfound.sh to test handling unfound objects.
Move more test functions into test/test_common.sh to facilitate code
reuse.
Allow the user to keep the temporary directory around after the test is
over by setting KEEP_TEMPDIR.
Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
Make distclean was failing because make uninstall was broken. (There were
still leftover files after running make install + make uninstall.)
To fix this, use automake's built-in installation mechanisms rather than
manually installing files using the install-data-local target.
EXTRA_DIST: fix paths to use srcdir where necessary
Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
The three modes each get an explicit config option that defaults to false.
You can choose one explicitly by enabling one of those. Otherwise, we
will choose an appropriate mode automatically based on detected btrfs
ioctls.
Signed-off-by: Sage Weil <sage@newdream.net>
* Fix VPATH builds (i.e., builds where srcdir != builddir).
Don't assume that we can get a source files named blah with ./blah.
Use $(srcdir)/blah instead.
* When doing "make dist", inject the .git_version file directly into the
ceph tarball
* Add tools/gui_resources.h to noinst_HEADERS
* Add ceph_tool_gui_DATA to all_sources
Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
Write past_intervals and snap_collections to a separate object instead of
an attr on the collection directory. This avoids exceeding the underlying
filesystem xattr limits during thrashing recovery. The struct_v on the
small info xattr is used to indicate the format of the biginfo object.
Also fixed pg deletion to clean out log and biginfo objects.
Added incompat format flag.
Signed-off-by: Sage Weil <sage@newdream.net>
We need to make sure the objects whose collection sets we just adjusted
are reflected on disk when we make the next pass on the next snapid.
Signed-off-by: Sage Weil <sage@newdream.net>
This ensures that when snap metadata is flushed, we will be auth on both
inodes and be able to do the update properly. This isn't the nicest
solution ever, since it can make migrations laggy, but it's the simplest.
Signed-off-by: Sage Weil <sage@newdream.net>
Default to enabling gtk rather than disabling it. Gracefully handle
cases where the user tries to enable it but it cannot be enabled.
Makefile.am: Add missing headers to noinst_HEADERS.
Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
When lockdep is enabled, use PTHREAD_MUTEX_ERRORCHECK instead of
PTHREAD_MUTEX_NORMAL for non-recursive mutexes.
Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
Call GuiMonitor::link_elements before GuiMonitor::connect_signals.
It doesn't seem safe to set up callbacks before the GUI elements are
fully initialized.
Signed-off-by: Colin McCabe <colinm@hq.newdream.net>