]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
rbd_mirror: don't report error if image replay canceled 25789/head
authorMykola Golub <mgolub@suse.com>
Fri, 4 Jan 2019 13:20:58 +0000 (13:20 +0000)
committerMykola Golub <mgolub@suse.com>
Fri, 4 Jan 2019 13:20:58 +0000 (13:20 +0000)
Fixes: https://tracker.ceph.com/issues/36038
Signed-off-by: Mykola Golub <mgolub@suse.com>
src/tools/rbd_mirror/ImageReplayer.cc

index 5cb5b6b9b78afc5e2b997842116a6238f19cb08f..3fd9b5803527c03af469599560d4b26b7bd543c2 100644 (file)
@@ -530,7 +530,9 @@ void ImageReplayer<I>::handle_bootstrap(int r) {
     }
   }
 
-  if (r == -EREMOTEIO) {
+  if (on_start_interrupted()) {
+    return;
+  } else if (r == -EREMOTEIO) {
     m_local_image_tag_owner = "";
     dout(5) << "remote image is non-primary" << dendl;
     on_start_fail(-EREMOTEIO, "remote image is non-primary");
@@ -542,8 +544,6 @@ void ImageReplayer<I>::handle_bootstrap(int r) {
   } else if (r < 0) {
     on_start_fail(r, "error bootstrapping replay");
     return;
-  } else if (on_start_interrupted()) {
-    return;
   } else if (m_resync_requested) {
     on_start_fail(0, "resync requested");
     return;
@@ -580,12 +580,12 @@ template <typename I>
 void ImageReplayer<I>::handle_init_remote_journaler(int r) {
   dout(10) << "r=" << r << dendl;
 
-  if (r < 0) {
+  if (on_start_interrupted()) {
+    return;
+  } else if (r < 0) {
     derr << "failed to initialize remote journal: " << cpp_strerror(r) << dendl;
     on_start_fail(r, "error initializing remote journal");
     return;
-  } else if (on_start_interrupted()) {
-    return;
   }
 
   m_remote_journaler->add_listener(&m_remote_listener);