From: Sage Weil Date: Sat, 8 Aug 2015 11:40:21 +0000 (-0400) Subject: osd/HitSet: make subclasses dump deterministically X-Git-Tag: v9.1.0~408^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=34c048b3cb2b16658e692ac5110115612031510d;p=ceph.git osd/HitSet: make subclasses dump deterministically Signed-off-by: Sage Weil --- diff --git a/src/osd/HitSet.h b/src/osd/HitSet.h index 2b981a3eaacf..51a396a32611 100644 --- a/src/osd/HitSet.h +++ b/src/osd/HitSet.h @@ -237,7 +237,10 @@ public: void dump(Formatter *f) const { f->dump_unsigned("insert_count", count); f->open_array_section("hash_set"); - for (ceph::unordered_set::const_iterator p = hits.begin(); p != hits.end(); ++p) + // dump deterministically + std::set tmp; + tmp.insert(hits.begin(), hits.end()); + for (std::set::iterator p = tmp.begin(); p != tmp.end(); ++p) f->dump_unsigned("hash", *p); f->close_section(); } @@ -314,7 +317,10 @@ public: void dump(Formatter *f) const { f->dump_unsigned("insert_count", count); f->open_array_section("set"); - for (ceph::unordered_set::const_iterator p = hits.begin(); p != hits.end(); ++p) { + // dump deterministically + std::set tmp; + tmp.insert(hits.begin(), hits.end()); + for (std::set::iterator p = tmp.begin(); p != tmp.end(); ++p) { f->open_object_section("object"); p->dump(f); f->close_section();