]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
ReplicatedPG: do not evict head while clone is being promoted 1620/head
authorSamuel Just <sam.just@inktank.com>
Sun, 6 Apr 2014 20:38:52 +0000 (13:38 -0700)
committerSamuel Just <sam.just@inktank.com>
Mon, 7 Apr 2014 21:34:01 +0000 (14:34 -0700)
Fixes: #8003
Signed-off-by: Samuel Just <sam.just@inktank.com>
src/osd/ReplicatedPG.cc

index 403bf0306750b96e0d09225d14bee936112d619b..0ca33370430fa8e1a86d0761f1cdae0ba73e9e43 100644 (file)
@@ -4469,6 +4469,11 @@ int ReplicatedPG::_verify_no_head_clones(const hobject_t& soid,
               << clone_oid << dendl;
       return -EBUSY;
     }
+    if (copy_ops.count(clone_oid)) {
+      dout(10) << __func__ << " cannot evict head, pending promote on clone "
+              << clone_oid << dendl;
+      return -EBUSY;
+    }
   }
   return 0;
 }