From 92be6fb093f5959658b2b72a4e25a52f3047af99 Mon Sep 17 00:00:00 2001 From: Mykola Golub Date: Tue, 21 Jan 2020 16:53:16 +0000 Subject: [PATCH] librbd: ignore ENOENT for mirror::snapshot::RemoveImageStateRequest It may happen (the state object already removed) when handling replayed RPC message. Fixes: https://tracker.ceph.com/issues/43666 Signed-off-by: Mykola Golub --- src/librbd/operation/SnapshotRemoveRequest.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/librbd/operation/SnapshotRemoveRequest.cc b/src/librbd/operation/SnapshotRemoveRequest.cc index da98f6be6f8..0beec79bbda 100644 --- a/src/librbd/operation/SnapshotRemoveRequest.cc +++ b/src/librbd/operation/SnapshotRemoveRequest.cc @@ -383,8 +383,10 @@ void SnapshotRemoveRequest::handle_remove_image_state(int r) { if (r < 0) { lderr(cct) << "failed to remove image state: " << cpp_strerror(r) << dendl; - this->complete(r); - return; + if (r != -ENOENT) { + this->complete(r); + return; + } } release_snap_id(); -- 2.39.5