From f931fec5583665f7774155fe92ffad9d2a6cf865 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Fri, 12 Feb 2010 12:52:18 -0800 Subject: [PATCH] osd: simplify, and version, pg attrs --- src/osd/PG.cc | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/src/osd/PG.cc b/src/osd/PG.cc index 2daa31f64b086..87e1745f1e5bb 100644 --- a/src/osd/PG.cc +++ b/src/osd/PG.cc @@ -1799,21 +1799,21 @@ void PG::write_info(ObjectStore::Transaction& t) { // pg state bufferlist infobl; + __u8 struct_v = 1; + ::encode(struct_v, infobl); ::encode(info, infobl); + ::encode(past_intervals, infobl); dout(20) << "write_info info " << infobl.length() << dendl; t.collection_setattr(coll_t::build_pg_coll(info.pgid), "info", infobl); // local state bufferlist snapbl; + struct_v = 1; + ::encode(struct_v, snapbl); ::encode(snap_collections, snapbl); dout(20) << "write_info snap " << snapbl.length() << dendl; t.collection_setattr(coll_t::build_pg_coll(info.pgid), "snap_collections", snapbl); - bufferlist ki; - ::encode(past_intervals, ki); - dout(20) << "write_info pastintervals " << ki.length() << dendl; - t.collection_setattr(coll_t::build_pg_coll(info.pgid), "past_intervals", ki); - dirty_info = false; } @@ -2107,26 +2107,22 @@ void PG::read_state(ObjectStore *store) { bufferlist bl; bufferlist::iterator p; + __u8 struct_v; // info store->collection_getattr(coll_t::build_pg_coll(info.pgid), "info", bl); p = bl.begin(); + ::decode(struct_v, p); ::decode(info, p); + ::decode(past_intervals, p); // snap_collections bl.clear(); store->collection_getattr(coll_t::build_pg_coll(info.pgid), "snap_collections", bl); p = bl.begin(); + ::decode(struct_v, p); ::decode(snap_collections, p); - // past_intervals - bl.clear(); - store->collection_getattr(coll_t::build_pg_coll(info.pgid), "past_intervals", bl); - if (bl.length()) { - p = bl.begin(); - ::decode(past_intervals, p); - } - read_log(store); } -- 2.39.5