f->dump_int("features", features);
f->dump_unsigned("old_weight", old_weight);
f->dump_stream("last_purged_snaps_scrub") << last_purged_snaps_scrub;
+ f->dump_int("dead_epoch", dead_epoch);
}
void osd_xinfo_t::encode(ceph::buffer::list& bl, uint64_t enc_features) const
encode(old_weight, bl);
if (v >= 4) {
encode(last_purged_snaps_scrub, bl);
+ encode(dead_epoch, bl);
}
ENCODE_FINISH(bl);
}
old_weight = 0;
if (struct_v >= 4) {
decode(last_purged_snaps_scrub, bl);
+ decode(dead_epoch, bl);
+ } else {
+ dead_epoch = 0;
}
DECODE_FINISH(bl);
}
<< " laggy_probability " << xi.laggy_probability
<< " laggy_interval " << xi.laggy_interval
<< " old_weight " << xi.old_weight
- << " last_purged_snaps_scrub " << xi.last_purged_snaps_scrub;
+ << " last_purged_snaps_scrub " << xi.last_purged_snaps_scrub
+ << " dead_epoch " << xi.dead_epoch;
}
// ----------------------------------
uint64_t features; ///< features supported by this osd we should know about
__u32 old_weight; ///< weight prior to being auto marked out
utime_t last_purged_snaps_scrub; ///< last scrub of purged_snaps
+ epoch_t dead_epoch = 0; ///< last epoch we were confirmed dead (not just down)
osd_xinfo_t() : laggy_probability(0), laggy_interval(0),
features(0), old_weight(0) {}