]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/osd_types: SnapSet: remove head_exists
authorSage Weil <sage@redhat.com>
Fri, 1 Sep 2017 17:39:46 +0000 (13:39 -0400)
committerSage Weil <sage@redhat.com>
Thu, 21 Sep 2017 18:29:34 +0000 (14:29 -0400)
Signed-off-by: Sage Weil <sage@redhat.com>
src/osd/osd_types.cc
src/osd/osd_types.h

index 42984d4c7fb81ba6ba10aeb388f38c1175edefac..33fc3f6dfd6a199240bc32bf41f15b53c85a33b0 100644 (file)
@@ -4644,7 +4644,7 @@ void SnapSet::encode(bufferlist& bl) const
 {
   ENCODE_START(3, 2, bl);
   ::encode(seq, bl);
-  ::encode(head_exists, bl);
+  ::encode(true, bl);  // head_exists
   ::encode(snaps, bl);
   ::encode(clones, bl);
   ::encode(clone_overlap, bl);
@@ -4657,7 +4657,7 @@ void SnapSet::decode(bufferlist::iterator& bl)
 {
   DECODE_START_LEGACY_COMPAT_LEN(3, 2, 2, bl);
   ::decode(seq, bl);
-  ::decode(head_exists, bl);
+  bl.advance(1);  // skip legacy head_exists (always true)
   ::decode(snaps, bl);
   ::decode(clones, bl);
   ::decode(clone_overlap, bl);
@@ -4676,7 +4676,6 @@ void SnapSet::dump(Formatter *f) const
   f->open_object_section("snap_context");
   sc.dump(f);
   f->close_section();
-  f->dump_int("head_exists", head_exists);
   f->open_array_section("clones");
   for (vector<snapid_t>::const_iterator p = clones.begin(); p != clones.end(); ++p) {
     f->open_object_section("clone");
@@ -4700,12 +4699,10 @@ void SnapSet::generate_test_instances(list<SnapSet*>& o)
 {
   o.push_back(new SnapSet);
   o.push_back(new SnapSet);
-  o.back()->head_exists = true;
   o.back()->seq = 123;
   o.back()->snaps.push_back(123);
   o.back()->snaps.push_back(12);
   o.push_back(new SnapSet);
-  o.back()->head_exists = true;
   o.back()->seq = 123;
   o.back()->snaps.push_back(123);
   o.back()->snaps.push_back(12);
@@ -4733,13 +4730,10 @@ void SnapSet::from_snap_set(const librados::snap_set_t& ss, bool legacy)
   seq = ss.seq;
   set<snapid_t> _snaps;
   set<snapid_t> _clones;
-  head_exists = false;
   for (vector<librados::clone_info_t>::const_iterator p = ss.clones.begin();
        p != ss.clones.end();
        ++p) {
-    if (p->cloneid == librados::SNAP_HEAD) {
-      head_exists = true;
-    } else {
+    if (p->cloneid != librados::SNAP_HEAD) {
       _clones.insert(p->cloneid);
       _snaps.insert(p->snaps.begin(), p->snaps.end());
       clone_size[p->cloneid] = p->size;
index fade0331affc1116b79c94553279f2ef610856e6..f03d790b9838c7a52db4fb764f3ee436afaed62a 100644 (file)
@@ -4445,14 +4445,13 @@ inline ostream& operator<<(ostream& out, const OSDSuperblock& sb)
  */
 struct SnapSet {
   snapid_t seq;
-  bool head_exists;
   vector<snapid_t> snaps;    // descending
   vector<snapid_t> clones;   // ascending
   map<snapid_t, interval_set<uint64_t> > clone_overlap;  // overlap w/ next newest
   map<snapid_t, uint64_t> clone_size;
   map<snapid_t, vector<snapid_t>> clone_snaps; // descending
 
-  SnapSet() : seq(0), head_exists(true) {}
+  SnapSet() : seq(0) {}
   explicit SnapSet(bufferlist& bl) {
     bufferlist::iterator p = bl.begin();
     decode(p);