From 7b506643eaf6f4fbc6fed1b92cf707d8c97dfa0a Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Tue, 9 Jun 2009 12:03:02 -0700 Subject: [PATCH] osd: improved logging for scrub --- src/osd/PG.cc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/osd/PG.cc b/src/osd/PG.cc index 7c6350897e4..6d539a5f27f 100644 --- a/src/osd/PG.cc +++ b/src/osd/PG.cc @@ -2226,6 +2226,8 @@ void PG::scrub() for (unsigned i=1; isize != p[i]->size) { + dout(0) << "scrub osd" << acting[i] << " " << po->poid + << " size " << p[i]->size << " != " << po->size << dendl; ss << info.pgid << " scrub osd" << acting[i] << " " << po->poid << " size " << p[i]->size << " != " << po->size; osd->get_logclient()->log(LOG_ERROR, ss); @@ -2233,6 +2235,8 @@ void PG::scrub() num_bad++; } if (po->attrs.size() != p[i]->attrs.size()) { + dout(0) << "scrub osd" << acting[i] << " " << po->poid + << " attr count " << p[i]->attrs.size() << " != " << po->attrs.size() << dendl; ss << info.pgid << " scrub osd" << acting[i] << " " << po->poid << " attr count " << p[i]->attrs.size() << " != " << po->attrs.size(); osd->get_logclient()->log(LOG_ERROR, ss); @@ -2242,6 +2246,8 @@ void PG::scrub() for (map::iterator q = po->attrs.begin(); q != po->attrs.end(); q++) { if (p[i]->attrs.count(q->first)) { if (q->second.cmp(p[i]->attrs[q->first])) { + dout(0) << "scrub osd" << acting[i] << " " << po->poid + << " attr " << q->first << " value mismatch" << dendl; ss << info.pgid << " scrub osd" << acting[i] << " " << po->poid << " attr " << q->first << " value mismatch"; osd->get_logclient()->log(LOG_ERROR, ss); @@ -2249,6 +2255,8 @@ void PG::scrub() num_bad++; } } else { + dout(0) << "scrub osd" << acting[i] << " " << po->poid + << " attr " << q->first << " missing" << dendl; ss << info.pgid << " scrub osd" << acting[i] << " " << po->poid << " attr " << q->first << " missing"; osd->get_logclient()->log(LOG_ERROR, ss); @@ -2270,6 +2278,7 @@ void PG::scrub() } if (num_missing || num_bad) { + dout(0) << "scrub " << num_missing << " missing, " << num_bad << " bad objects" << dendl; ss << info.pgid << " scrub " << num_missing << " missing, " << num_bad << " bad objects"; osd->get_logclient()->log(LOG_ERROR, ss); state_set(PG_STATE_INCONSISTENT);