]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: num_objects_misplaced
authorSage Weil <sage@inktank.com>
Sat, 14 Jun 2014 16:21:52 +0000 (09:21 -0700)
committerSage Weil <sage@redhat.com>
Sat, 16 Aug 2014 20:18:53 +0000 (13:18 -0700)
Signed-off-by: Sage Weil <sage@inktank.com>
src/osd/osd_types.cc
src/osd/osd_types.h

index 84ceb8a34f74511859cd67de6ebab16c2e46e94e..ca3c0e412f5ca32bffc618ac577d6a0a21dbc834 100644 (file)
@@ -1379,6 +1379,7 @@ void object_stat_sum_t::dump(Formatter *f) const
   f->dump_int("num_object_copies", num_object_copies);
   f->dump_int("num_objects_missing_on_primary", num_objects_missing_on_primary);
   f->dump_int("num_objects_degraded", num_objects_degraded);
+  f->dump_int("num_objects_misplaced", num_objects_misplaced);
   f->dump_int("num_objects_unfound", num_objects_unfound);
   f->dump_int("num_objects_dirty", num_objects_dirty);
   f->dump_int("num_whiteouts", num_whiteouts);
@@ -1398,7 +1399,7 @@ void object_stat_sum_t::dump(Formatter *f) const
 
 void object_stat_sum_t::encode(bufferlist& bl) const
 {
-  ENCODE_START(9, 3, bl);
+  ENCODE_START(10, 3, bl);
   ::encode(num_bytes, bl);
   ::encode(num_objects, bl);
   ::encode(num_object_clones, bl);
@@ -1420,12 +1421,13 @@ void object_stat_sum_t::encode(bufferlist& bl) const
   ::encode(num_whiteouts, bl);
   ::encode(num_objects_omap, bl);
   ::encode(num_objects_hit_set_archive, bl);
+  ::encode(num_objects_misplaced, bl);
   ENCODE_FINISH(bl);
 }
 
 void object_stat_sum_t::decode(bufferlist::iterator& bl)
 {
-  DECODE_START_LEGACY_COMPAT_LEN(9, 3, 3, bl);
+  DECODE_START_LEGACY_COMPAT_LEN(10, 3, 3, bl);
   ::decode(num_bytes, bl);
   if (struct_v < 3) {
     uint64_t num_kb;
@@ -1479,6 +1481,11 @@ void object_stat_sum_t::decode(bufferlist::iterator& bl)
   } else {
     num_objects_hit_set_archive = 0;
   }
+  if (struct_v >= 10) {
+    ::decode(num_objects_misplaced, bl);
+  } else {
+    num_objects_misplaced = 0;
+  }
   DECODE_FINISH(bl);
 }
 
@@ -1504,6 +1511,7 @@ void object_stat_sum_t::generate_test_instances(list<object_stat_sum_t*>& o)
   a.num_scrub_errors = a.num_deep_scrub_errors + a.num_shallow_scrub_errors;
   a.num_objects_dirty = 21;
   a.num_whiteouts = 22;
+  a.num_objects_misplaced = 1232;
   o.push_back(new object_stat_sum_t(a));
 }
 
@@ -1515,6 +1523,7 @@ void object_stat_sum_t::add(const object_stat_sum_t& o)
   num_object_copies += o.num_object_copies;
   num_objects_missing_on_primary += o.num_objects_missing_on_primary;
   num_objects_degraded += o.num_objects_degraded;
+  num_objects_misplaced += o.num_objects_misplaced;
   num_rd += o.num_rd;
   num_rd_kb += o.num_rd_kb;
   num_wr += o.num_wr;
@@ -1540,6 +1549,7 @@ void object_stat_sum_t::sub(const object_stat_sum_t& o)
   num_object_copies -= o.num_object_copies;
   num_objects_missing_on_primary -= o.num_objects_missing_on_primary;
   num_objects_degraded -= o.num_objects_degraded;
+  num_objects_misplaced -= o.num_objects_misplaced;
   num_rd -= o.num_rd;
   num_rd_kb -= o.num_rd_kb;
   num_wr -= o.num_wr;
index b97a7a7a2f0808fbbba1bb08ddc60d72be2dc989..e03aac7c0c4ddfb9bda7d9aec59ecaf6abdf914d 100644 (file)
@@ -1165,6 +1165,7 @@ struct object_stat_sum_t {
   int64_t num_object_copies;  // num_objects * num_replicas
   int64_t num_objects_missing_on_primary;
   int64_t num_objects_degraded;
+  int64_t num_objects_misplaced;
   int64_t num_objects_unfound;
   int64_t num_rd, num_rd_kb;
   int64_t num_wr, num_wr_kb;
@@ -1182,7 +1183,9 @@ struct object_stat_sum_t {
   object_stat_sum_t()
     : num_bytes(0),
       num_objects(0), num_object_clones(0), num_object_copies(0),
-      num_objects_missing_on_primary(0), num_objects_degraded(0), num_objects_unfound(0),
+      num_objects_missing_on_primary(0), num_objects_degraded(0),
+      num_objects_misplaced(0),
+      num_objects_unfound(0),
       num_rd(0), num_rd_kb(0), num_wr(0), num_wr_kb(0),
       num_scrub_errors(0), num_shallow_scrub_errors(0),
       num_deep_scrub_errors(0),
@@ -1203,6 +1206,7 @@ struct object_stat_sum_t {
     FLOOR(num_object_copies);
     FLOOR(num_objects_missing_on_primary);
     FLOOR(num_objects_degraded);
+    FLOOR(num_objects_misplaced);
     FLOOR(num_objects_unfound);
     FLOOR(num_rd);
     FLOOR(num_rd_kb);
@@ -1236,6 +1240,7 @@ struct object_stat_sum_t {
     SPLIT(num_object_copies);
     SPLIT(num_objects_missing_on_primary);
     SPLIT(num_objects_degraded);
+    SPLIT(num_objects_misplaced);
     SPLIT(num_objects_unfound);
     SPLIT(num_rd);
     SPLIT(num_rd_kb);