From: Jianpeng Ma Date: Mon, 23 Mar 2015 01:54:52 +0000 (+0800) Subject: osd/ReplicatedPG: For obj has omap, it mean have omap data or omap header or have... X-Git-Tag: v0.94.8~42^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=f0242598ea7c990aef2d00f3dc6a0cd65656332c;p=ceph.git osd/ReplicatedPG: For obj has omap, it mean have omap data or omap header or have both. Signed-off-by: Jianpeng Ma (cherry picked from commit fc51ce2a837e8e878d46d8ca54531aa7bd5d01b2) --- diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index e846938610ab..ec7fc5ef045f 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -6284,10 +6284,11 @@ void ReplicatedPG::process_copy_chunk(hobject_t oid, ceph_tid_t tid, int r) return; } - if (cop->omap_data.length()) + if (cop->omap_data.length() || cop->omap_header.length()) cop->results.has_omap = true; - if (r >= 0 && pool.info.require_rollback() && cop->omap_data.length()) { + if (r >= 0 && pool.info.require_rollback() && + (cop->omap_data.length() || cop->omap_header.length())) { r = -EOPNOTSUPP; } cop->objecter_tid = 0;