From: Samuel Just Date: Thu, 10 Jan 2013 00:41:40 +0000 (-0800) Subject: ReplicatedPG: compare nlinks to snapcolls X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=8fb0481391be8eb24468f8916fd094ce7fe6ba03;p=ceph.git ReplicatedPG: compare nlinks to snapcolls nlinks gives us the number of hardlinks to the object. nlinks should be 1 + snapcolls.size(). This will allow us to detect links which remain in an erroneous snap collection. Signed-off-by: Samuel Just --- diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index f0fd24e4640b..8b24fc93b967 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -6672,6 +6672,12 @@ bool ReplicatedPG::_report_snap_collection_errors( << std::endl; errors = true; } + if (nlinks != snapcolls.size() + 1) { + out << info.pgid << " osd." << osd << " unaccounted for links on object " + << hoid << " snapcolls " << snapcolls << " nlinks " << nlinks + << std::endl; + errors = true; + } return errors; }