From: Josh Durgin Date: Wed, 21 Nov 2012 21:24:24 +0000 (-0800) Subject: rbd: make snap purge fail if removing a snap fails X-Git-Tag: v0.55~63 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=5126bd70850812d69fcc251b88d7d6b88033ad6c;p=ceph.git rbd: make snap purge fail if removing a snap fails Otherwise we report 100% removed when some may have failed. Reported-by: Andrey Korolyov Signed-off-by: Josh Durgin --- diff --git a/src/rbd.cc b/src/rbd.cc index fa7648a21481..09d506f1ef7b 100644 --- a/src/rbd.cc +++ b/src/rbd.cc @@ -472,7 +472,11 @@ static int do_purge_snaps(librbd::Image& image) } for (size_t i = 0; i < snaps.size(); ++i) { - image.snap_remove(snaps[i].name.c_str()); + r = image.snap_remove(snaps[i].name.c_str()); + if (r < 0) { + pc.fail(); + return r; + } pc.update_progress(i + 1, snaps.size()); }