From: Ding Dinghua Date: Thu, 30 Oct 2014 06:58:42 +0000 (+0800) Subject: osdc/Objecter: Fix a bug of dead looping in Objecter::handle_osd_map X-Git-Tag: v0.80.10~39^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F3952%2Fhead;p=ceph.git osdc/Objecter: Fix a bug of dead looping in Objecter::handle_osd_map If current map epoch is less than oldest epoch, current map epoch should step up to oldest epoch. Fixes: #9986 Signed-off-by: Ding Dinghua (cherry picked from commit e0166a23c2cf655bfb4cf873be021a14d9b9be27) Conflicts: src/osdc/Objecter.cc the debug line that follows was re-indented --- diff --git a/src/osdc/Objecter.cc b/src/osdc/Objecter.cc index 3c60c6c41fe..649c61ce5c5 100644 --- a/src/osdc/Objecter.cc +++ b/src/osdc/Objecter.cc @@ -607,7 +607,7 @@ void Objecter::handle_osd_map(MOSDMap *m) logger->inc(l_osdc_map_full); } else { - if (e > m->get_oldest()) { + if (e >= m->get_oldest()) { ldout(cct, 3) << "handle_osd_map requesting missing epoch " << osdmap->get_epoch()+1 << dendl; maybe_request_map(); break;