The babeltrace package is not found on wheezy, not just squeeze.
Fix the regular expression that incorrectly replaced
libbabeltrace-ctf-dev with -ctf-dev leading to a strange error
E: Opening configuration file tf-dev - ifstream::ifstream (2: No such file or directory)
when running apt-get install.
Signed-off-by: Loic Dachary <ldachary@redhat.com>
The TODO was a reminder to integrate with the watch/notify
error handler. This integration was already completed under
previous commits.
Fixes: #8903
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
The object map wasn't being properly refreshed after setting
the snapshot context on the parent image. Additionally fixed
a potential deadlock that could have occurred if no object
map update was required when trimming an image.
Fixes: #10706
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
When the librados watcher fails, librbd will now continuously
attempt to re-register the watch until it succeeds or the image
is closed.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
If a cloned image was shrunk, it was possible for a copyup
to be performed on objects outside of the new image range.
Resize now pre-shrinks the parent overlap to disable copyup
when removing objects.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
According to the manual 'mount -f' adds an entry in /etc/mtab.
Therefore the 'mount -v' command needs the flag -n to avoid
duplicate entries in /etc/mtab.
Signed-off-by: Karel Striegel <karel@striegel.be>
The object_map_resize sanity check ensures that a resize will
not erase state for an in-use object. The check was incorrectly
including a block within the new object map range.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
The AioRemove state machine is not properly advanced from
_PRE to _FLAT. This will result in an infinite state machine
loop.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
If exclusive locking was enabled, the librbd aio_flush command
would block waiting for queued AIO operations to proceed once
the exclusive lock was obtained. Now librbd will no longer
block when aio_flush is invoked and AIO operations are waiting
on the exclusive lock.
Fixes: #10714
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
A circular reference was inadvertently created when using the
CFUNCTYPE binding for callbacks for the asynchronous i/o callbacks.
This commit refactors the usage of the callbacks such that the
Ioctx object does not have a class reference to the callbacks.
Fixes: #10723
Backport: giant, firefly, dumpling
Signed-off-by: Billy Olsen <billy.olsen@gmail.com>
Reviewed-by: Dan Mick <dmick@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
If the RBD object map is invalidated during the run of the test,
the tests will now return a failed status to alert to an issue
with the object map.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
As a convenience, get_flags now retrieves the current image
flags as well as all historical snapshop flags with a single
librados operation.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
When loading of librados failed, the real cause was hidden in some
circumstances due to exception rewriting. Additionally, the error
reporting was inconsistent -- two paths with different exceptions
and messages existed.
Fixes: #7264
Signed-off-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>