From: Sage Weil Date: Mon, 22 Dec 2008 20:09:15 +0000 (-0800) Subject: osd: fix read_log version attr check X-Git-Tag: v0.6~11 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=960ab7009ce0ab0172dde523d70e32b1bafb7bdb;p=ceph.git osd: fix read_log version attr check --- diff --git a/src/osd/PG.cc b/src/osd/PG.cc index 2f53a292aec..c393049d1a5 100644 --- a/src/osd/PG.cc +++ b/src/osd/PG.cc @@ -1782,7 +1782,9 @@ void PG::read_log(ObjectStore *store) pobject_t poid(info.pgid.pool(), 0, i->oid); bufferlist bv; int r = osd->store->getattr(info.pgid.to_coll(), poid, "version", bv); - eversion_t v(bv); + eversion_t v; + if (r >= 0) + v = eversion_t(bv); if (r < 0 || v < i->version) { dout(15) << "read_log missing " << *i << dendl; missing.add(i->oid, i->version, v);