From: Sage Weil Date: Tue, 11 Jun 2019 21:39:51 +0000 (-0500) Subject: osd/osd_types: SnapSet::get_ssc_as_of: use clone_snaps X-Git-Tag: v15.1.0~2308^2~54 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=f43d2147896c22a25ebe3c05296a1debbbeaea4f;p=ceph-ci.git osd/osd_types: SnapSet::get_ssc_as_of: use clone_snaps Fabricate a SnapContext from the clone_snaps instead of snaps (which we are trying to kill). Signed-off-by: Sage Weil --- diff --git a/src/osd/osd_types.h b/src/osd/osd_types.h index ed486f43b12..d22cab3f824 100644 --- a/src/osd/osd_types.h +++ b/src/osd/osd_types.h @@ -5057,11 +5057,14 @@ struct SnapSet { SnapContext get_ssc_as_of(snapid_t as_of) const { SnapContext out; out.seq = as_of; - for (std::vector::const_iterator i = snaps.begin(); - i != snaps.end(); - ++i) { - if (*i <= as_of) - out.snaps.push_back(*i); + for (auto p = clone_snaps.rbegin(); + p != clone_snaps.rend(); + ++p) { + for (auto snap : p->second) { + if (snap <= as_of) { + out.snaps.push_back(snap); + } + } } return out; }