Consider a case where current loner is A and wanted loner is B.
At the top of the function we try to set the loner, but that may fail
because we haven't processed the gathered caps yet for the previous
loner. In the body we do that and potentially drop the old loner, but we
do not try_set_loner() again on the desired loner.
Try after our drop. If it succeeds, loop through the eval's one more time
so that we can issue caps approriately.
This fixes a hang induced by a simple loop like:
while true ; do echo asdf >> mnt.a/foo ; tail mnt.b/foo ; done &
while true ; do ls mnt.a mnt.b ; done
(The second loop may not be necessary.)
Signed-off-by: Sage Weil <sage@inktank.com>
This is a partial fix for bug 3471. Enable building of debuginfo package.
Some distributions enable this automatically by installing additional rpm
macros, on others it needs to be explicity added to the spec file.
Without this check, 'rbd mv foo' crashed trying to use a NULL char* as
a string.
Reported-by: Andrey Korolyov <andrey@xdel.ru>
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Without this check, 'rbd mv foo' crashed trying to use a NULL char* as
a string.
Reported-by: Andrey Korolyov <andrey@xdel.ru>
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
A minimum pool size of 2 was introduced by 13486857cf. This sets the
minimum to one so that basic vstart environments work.
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
(also forgot the John's reviewed-by on the last commit)
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
Reviewed-by: John Wilkins <john.wilkins@inktank.com>
Some users have been incurring into problems adding new monitors while
following these steps. Some of these problems are due to the meaning of
'{path}' being a bit ambiguous. This patch removes said ambiguity by
replacing '{path}' with '{tmp}', supposed to be a temporary directory
containing the files necessary to add the monitor (monmap and keyring).
Fixes: #3438#3463
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
Otherwise, we can't use ceph osd dump --format=json to map pool name
onto pool id.
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
1) use right snap id when forming parent spec to search for children
2) add test case for "unprotect with extant children"
Signed-off-by: Dan Mick <dan.mick@inktank.com>
Prevents a make dist on a built tree from including the compiled
bytecode files produced from compiling the Java tests.
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
TestSuite class to run all tests
Remove the libcephfs-test.jar when running ant clean
Signed-off-by: Joe Buck <jbbuck@gmail.com>
Reviewed-by: Noah Watkins <noahwatkins@gmail.com>
of tests classes from build.xml to Makefile and editing configure.ac to
look for the junit4 jar in the default location of /usr/share/java. It
is still possible to build and run tests from build.xml as well as
Makefile.
Signed-off-by: Joe Buck <jbbuck@gmail.com>
Reviewed-by: Noah Watkins <noahwatkins@gmail.com>
Return value of declaration was is a JNI specific jlong type, while a
the return type of the definition was long. g++ not happy.
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
This will ensure that users will see a health warning when, for instance,
NOUP or PAUSE[RD|WR|EXEC] flags are set.
Signed-off-by: Sage Weil <sage@inktank.com>