{
assert(missing.have_missing());
- dout(10) << __func__ << ": searching for " << missing.num_missing()
- << " missing objects." << dendl;
+ dout(10) << __func__ << " "
+ << missing.num_missing() << " missing, "
+ << get_num_unfound() << " unfound"
+ << dendl;
std::map<int,Info>::const_iterator end = peer_info.end();
for (std::map<int,Info>::const_iterator pi = peer_info.begin();
}
pg_stats_stable.num_objects_degraded += degraded;
- pg_stats_stable.num_objects_unfound =
- missing.num_missing() - missing_loc.size();
+ pg_stats_stable.num_objects_unfound = get_num_unfound();
}
dout(15) << "update_stats " << pg_stats_stable.reported << dendl;
if (pg.missing.num_missing()) {
out << " m=" << pg.missing.num_missing();
if (pg.is_primary()) {
- int unfound = pg.missing.num_missing() - pg.missing_loc.size();
+ int unfound = pg.get_num_unfound();
if (unfound)
out << " u=" << unfound;
}
bool have_unfound() const {
return missing.num_missing() > missing_loc.size();
}
+ int get_num_unfound() const {
+ return missing.num_missing() - missing_loc.size();
+ }
virtual void clean_up_local(ObjectStore::Transaction& t) = 0;