]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: print pg_info_t::purged_snaps as array, not string 14217/head
authorliuchang0812 <liuchang0812@gmail.com>
Wed, 29 Mar 2017 02:27:39 +0000 (10:27 +0800)
committerliuchang0812 <liuchang0812@gmail.com>
Thu, 30 Mar 2017 06:41:36 +0000 (14:41 +0800)
Fixes: http://tracker.ceph.com/issues/18584
Signed-off-by: liuchang0812 <liuchang0812@gmail.com>
src/osd/osd_types.cc

index 7eedcd3a2e456d1283c95f7e7790ed3ff8320f33..2cce17e029fc19f6858e95bb9a489973e5248782 100644 (file)
@@ -2873,7 +2873,16 @@ void pg_info_t::dump(Formatter *f) const
   f->dump_int("last_user_version", last_user_version);
   f->dump_stream("last_backfill") << last_backfill;
   f->dump_int("last_backfill_bitwise", (int)last_backfill_bitwise);
-  f->dump_stream("purged_snaps") << purged_snaps;
+  f->open_array_section("purged_snaps");
+  for (interval_set<snapid_t>::const_iterator i=purged_snaps.begin();
+       i != purged_snaps.end();
+       ++i) {
+    f->open_object_section("purged_snap_interval");
+    f->dump_stream("start") << i.get_start();
+    f->dump_stream("length") << i.get_len();
+    f->close_section();
+  }
+  f->close_section();
   f->open_object_section("history");
   history.dump(f);
   f->close_section();