From: Sage Weil Date: Tue, 28 Mar 2017 20:07:29 +0000 (-0400) Subject: osd/ReplicatedBackend: set recovry_info.ss on non-head push X-Git-Tag: v12.0.3~28^2~21 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=138a808afa7804b75da76dbde6ed2a98d9140d4b;p=ceph-ci.git osd/ReplicatedBackend: set recovry_info.ss on non-head push Replicas need this in order to store the clones in SnapMapper. Signed-off-by: Sage Weil --- diff --git a/src/osd/ReplicatedBackend.cc b/src/osd/ReplicatedBackend.cc index ba5ab88151b..fc6c0806984 100644 --- a/src/osd/ReplicatedBackend.cc +++ b/src/osd/ReplicatedBackend.cc @@ -1497,6 +1497,7 @@ void ReplicatedBackend::prep_push_to_replica( SnapSetContext *ssc = obc->ssc; assert(ssc); dout(15) << "push_to_replica snapset is " << ssc->snapset << dendl; + pop->recovery_info.ss = ssc->snapset; map::const_iterator pm = get_parent()->get_shard_missing().find(peer); assert(pm != get_parent()->get_shard_missing().end()); @@ -1568,6 +1569,7 @@ void ReplicatedBackend::prep_push( pi.recovery_info.clone_subset = clone_subsets; pi.recovery_info.soid = soid; pi.recovery_info.oi = obc->obs.oi; + pi.recovery_info.ss = pop->recovery_info.ss; pi.recovery_info.version = version; pi.lock_manager = std::move(lock_manager); diff --git a/src/osd/osd_types.cc b/src/osd/osd_types.cc index b04064da1ea..f1d0c8ba03f 100644 --- a/src/osd/osd_types.cc +++ b/src/osd/osd_types.cc @@ -5289,6 +5289,7 @@ ostream &ObjectRecoveryInfo::print(ostream &out) const << ", size: " << size << ", copy_subset: " << copy_subset << ", clone_subset: " << clone_subset + << ", snapset: " << ss << ")"; }