mirror of
https://github.com/ceph/ceph
synced 2025-02-23 02:57:21 +00:00
osd/osd_types: rename object_info_t::snaps -> legacy_snaps
This will make it easier to identify users of this field that need to conditionally use either the old legacy_snaps or the new SnapSet::clone_snaps vector. Signed-off-by: Sage Weil <sage@redhat.com>
This commit is contained in:
parent
a7b5922169
commit
bdaf7740da
@ -3971,7 +3971,7 @@ void PG::_scan_snaps(ScrubMap &smap)
|
||||
} catch(...) {
|
||||
continue;
|
||||
}
|
||||
set<snapid_t> oi_snaps(oi.snaps.begin(), oi.snaps.end());
|
||||
set<snapid_t> oi_snaps(oi.legacy_snaps.begin(), oi.legacy_snaps.end());
|
||||
set<snapid_t> cur_snaps;
|
||||
int r = snap_mapper.get_snaps(hoid, &cur_snaps);
|
||||
if (r != 0 && r != -ENOENT) {
|
||||
|
@ -334,11 +334,11 @@ void PrimaryLogPG::on_local_recover(
|
||||
ObjectRecoveryInfo recovery_info(_recovery_info);
|
||||
clear_object_snap_mapping(t, hoid);
|
||||
if (recovery_info.soid.snap < CEPH_NOSNAP) {
|
||||
assert(recovery_info.oi.snaps.size());
|
||||
assert(recovery_info.oi.legacy_snaps.size());
|
||||
OSDriver::OSTransaction _t(osdriver.get_transaction(t));
|
||||
set<snapid_t> snaps(
|
||||
recovery_info.oi.snaps.begin(),
|
||||
recovery_info.oi.snaps.end());
|
||||
recovery_info.oi.legacy_snaps.begin(),
|
||||
recovery_info.oi.legacy_snaps.end());
|
||||
snap_mapper.add_oid(
|
||||
recovery_info.soid,
|
||||
snaps,
|
||||
@ -3531,7 +3531,7 @@ PrimaryLogPG::OpContextUPtr PrimaryLogPG::trim_object(bool first, const hobject_
|
||||
assert(snapset_obc);
|
||||
|
||||
object_info_t &coi = obc->obs.oi;
|
||||
set<snapid_t> old_snaps(coi.snaps.begin(), coi.snaps.end());
|
||||
set<snapid_t> old_snaps(coi.legacy_snaps.begin(), coi.legacy_snaps.end());
|
||||
if (old_snaps.empty()) {
|
||||
osd->clog->error() << __func__ << " No object info snaps for " << coid;
|
||||
return NULL;
|
||||
@ -3655,7 +3655,7 @@ PrimaryLogPG::OpContextUPtr PrimaryLogPG::trim_object(bool first, const hobject_
|
||||
// save adjusted snaps for this object
|
||||
dout(10) << coid << " snaps " << old_snaps
|
||||
<< " -> " << new_snaps << dendl;
|
||||
coi.snaps = vector<snapid_t>(new_snaps.rbegin(), new_snaps.rend());
|
||||
coi.legacy_snaps = vector<snapid_t>(new_snaps.rbegin(), new_snaps.rend());
|
||||
|
||||
coi.prior_version = coi.version;
|
||||
coi.version = ctx->at_version;
|
||||
@ -5235,8 +5235,9 @@ int PrimaryLogPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
|
||||
}
|
||||
break;
|
||||
}
|
||||
for (vector<snapid_t>::reverse_iterator p = clone_obc->obs.oi.snaps.rbegin();
|
||||
p != clone_obc->obs.oi.snaps.rend();
|
||||
for (vector<snapid_t>::reverse_iterator p =
|
||||
clone_obc->obs.oi.legacy_snaps.rbegin();
|
||||
p != clone_obc->obs.oi.legacy_snaps.rend();
|
||||
++p) {
|
||||
ci.snaps.push_back(*p);
|
||||
}
|
||||
@ -6719,7 +6720,7 @@ void PrimaryLogPG::make_writeable(OpContext *ctx)
|
||||
snap_oi->version = ctx->at_version;
|
||||
snap_oi->prior_version = ctx->obs->oi.version;
|
||||
snap_oi->copy_user_bits(ctx->obs->oi);
|
||||
snap_oi->snaps = snaps;
|
||||
snap_oi->legacy_snaps = snaps;
|
||||
|
||||
_make_clone(ctx, ctx->op_t.get(), ctx->clone_obc, soid, coid, snap_oi);
|
||||
|
||||
@ -7138,9 +7139,9 @@ void PrimaryLogPG::finish_ctx(OpContext *ctx, int log_op_type, bool maintain_ssc
|
||||
case pg_log_entry_t::MODIFY:
|
||||
case pg_log_entry_t::PROMOTE:
|
||||
case pg_log_entry_t::CLEAN:
|
||||
dout(20) << __func__ << " encoding snaps " << ctx->new_obs.oi.snaps
|
||||
dout(20) << __func__ << " encoding snaps " << ctx->new_obs.oi.legacy_snaps
|
||||
<< dendl;
|
||||
::encode(ctx->new_obs.oi.snaps, ctx->log.back().snaps);
|
||||
::encode(ctx->new_obs.oi.legacy_snaps, ctx->log.back().snaps);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@ -7307,7 +7308,7 @@ int PrimaryLogPG::fill_in_copy_get(
|
||||
reply_obj.size = oi.size;
|
||||
reply_obj.mtime = oi.mtime;
|
||||
if (soid.snap < CEPH_NOSNAP) {
|
||||
reply_obj.snaps = oi.snaps;
|
||||
reply_obj.snaps = oi.legacy_snaps;
|
||||
} else {
|
||||
assert(obc->ssc);
|
||||
reply_obj.snap_seq = obc->ssc->snapset.seq;
|
||||
@ -8041,8 +8042,8 @@ void PrimaryLogPG::finish_promote(int r, CopyResults *results,
|
||||
tctx->new_obs.oi.truncate_size = results->truncate_size;
|
||||
|
||||
if (soid.snap != CEPH_NOSNAP) {
|
||||
tctx->new_obs.oi.snaps = results->snaps;
|
||||
assert(!tctx->new_obs.oi.snaps.empty());
|
||||
tctx->new_obs.oi.legacy_snaps = results->snaps;
|
||||
assert(!tctx->new_obs.oi.legacy_snaps.empty());
|
||||
assert(obc->ssc->snapset.clone_size.count(soid.snap));
|
||||
assert(obc->ssc->snapset.clone_size[soid.snap] ==
|
||||
results->object_size);
|
||||
@ -8281,7 +8282,7 @@ int PrimaryLogPG::start_flush(
|
||||
snapc.seq = snapset.seq;
|
||||
snapc.snaps = snapset.snaps;
|
||||
} else {
|
||||
snapid_t min_included_snap = oi.snaps.back();
|
||||
snapid_t min_included_snap = oi.legacy_snaps.back();
|
||||
snapc = snapset.get_ssc_as_of(min_included_snap - 1);
|
||||
}
|
||||
|
||||
@ -9539,10 +9540,11 @@ int PrimaryLogPG::find_object_context(const hobject_t& oid,
|
||||
ssc = 0;
|
||||
|
||||
// clone
|
||||
dout(20) << "find_object_context " << soid << " snaps " << obc->obs.oi.snaps
|
||||
dout(20) << "find_object_context " << soid
|
||||
<< " snaps " << obc->obs.oi.legacy_snaps
|
||||
<< dendl;
|
||||
snapid_t first = obc->obs.oi.snaps[obc->obs.oi.snaps.size()-1];
|
||||
snapid_t last = obc->obs.oi.snaps[0];
|
||||
snapid_t first = obc->obs.oi.legacy_snaps[obc->obs.oi.legacy_snaps.size()-1];
|
||||
snapid_t last = obc->obs.oi.legacy_snaps[0];
|
||||
if (first <= oid.snap) {
|
||||
dout(20) << "find_object_context " << soid << " [" << first << "," << last
|
||||
<< "] contains " << oid.snap << " -- HIT " << obc->obs << dendl;
|
||||
|
@ -4954,7 +4954,7 @@ void object_info_t::encode(bufferlist& bl, uint64_t features) const
|
||||
if (soid.snap == CEPH_NOSNAP)
|
||||
::encode(osd_reqid_t(), bl); // used to be wrlock_by
|
||||
else
|
||||
::encode(snaps, bl);
|
||||
::encode(legacy_snaps, bl);
|
||||
::encode(truncate_seq, bl);
|
||||
::encode(truncate_size, bl);
|
||||
::encode(is_lost(), bl);
|
||||
@ -4996,7 +4996,7 @@ void object_info_t::decode(bufferlist::iterator& bl)
|
||||
osd_reqid_t wrlock_by;
|
||||
::decode(wrlock_by, bl);
|
||||
} else {
|
||||
::decode(snaps, bl);
|
||||
::decode(legacy_snaps, bl);
|
||||
}
|
||||
::decode(truncate_seq, bl);
|
||||
::decode(truncate_size, bl);
|
||||
@ -5078,9 +5078,10 @@ void object_info_t::dump(Formatter *f) const
|
||||
f->dump_stream("local_mtime") << local_mtime;
|
||||
f->dump_unsigned("lost", (int)is_lost());
|
||||
f->dump_unsigned("flags", (int)flags);
|
||||
f->open_array_section("snaps");
|
||||
for (vector<snapid_t>::const_iterator p = snaps.begin(); p != snaps.end(); ++p)
|
||||
f->dump_unsigned("snap", *p);
|
||||
f->open_array_section("legacy_snaps");
|
||||
for (auto s : legacy_snaps) {
|
||||
f->dump_unsigned("snap", s);
|
||||
}
|
||||
f->close_section();
|
||||
f->dump_unsigned("truncate_seq", truncate_seq);
|
||||
f->dump_unsigned("truncate_size", truncate_size);
|
||||
@ -5113,8 +5114,8 @@ ostream& operator<<(ostream& out, const object_info_t& oi)
|
||||
{
|
||||
out << oi.soid << "(" << oi.version
|
||||
<< " " << oi.last_reqid;
|
||||
if (oi.soid.snap != CEPH_NOSNAP)
|
||||
out << " " << oi.snaps;
|
||||
if (oi.soid.snap != CEPH_NOSNAP && !oi.legacy_snaps.empty())
|
||||
out << " " << oi.legacy_snaps;
|
||||
if (oi.flags)
|
||||
out << " " << oi.get_flag_string();
|
||||
out << " s " << oi.size;
|
||||
|
@ -4440,7 +4440,7 @@ struct object_info_t {
|
||||
return get_flag_string(flags);
|
||||
}
|
||||
|
||||
vector<snapid_t> snaps; // [clone]
|
||||
vector<snapid_t> legacy_snaps; // [clone] pre-luminous; moved to SnapSet
|
||||
|
||||
uint64_t truncate_seq, truncate_size;
|
||||
|
||||
|
@ -840,7 +840,7 @@ int get_attrs(ObjectStore *store, coll_t coll, ghobject_t hoid,
|
||||
cerr << "object_info " << oi << std::endl;
|
||||
|
||||
OSDriver::OSTransaction _t(driver.get_transaction(t));
|
||||
set<snapid_t> oi_snaps(oi.snaps.begin(), oi.snaps.end());
|
||||
set<snapid_t> oi_snaps(oi.legacy_snaps.begin(), oi.legacy_snaps.end());
|
||||
snap_mapper.add_oid(hoid.hobj, oi_snaps, &_t);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user