diff options
author | Samuel Just <sam.just@inktank.com> | 2014-04-06 22:38:52 +0200 |
---|---|---|
committer | Samuel Just <sam.just@inktank.com> | 2014-04-07 23:34:01 +0200 |
commit | 07099ecd4c17bccf7fe1ce08031e774a0270fd99 (patch) | |
tree | 752a9d77cc6770d01f28a255d7546198a5561aa2 /src/osd/ReplicatedPG.cc | |
parent | ReplicatedPG::trim_object: account evicted prev clone for stats (diff) | |
download | ceph-07099ecd4c17bccf7fe1ce08031e774a0270fd99.tar.xz ceph-07099ecd4c17bccf7fe1ce08031e774a0270fd99.zip |
ReplicatedPG: do not evict head while clone is being promoted
Fixes: #8003
Signed-off-by: Samuel Just <sam.just@inktank.com>
Diffstat (limited to '')
-rw-r--r-- | src/osd/ReplicatedPG.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index 403bf030675..0ca33370430 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -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; } |