]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osdc/Objecter: Fix a bug of dead looping in Objecter::handle_osd_map 3952/head
authorDing Dinghua <dingdinghua85@gmail.com>
Thu, 30 Oct 2014 06:58:42 +0000 (14:58 +0800)
committerLoic Dachary <ldachary@redhat.com>
Wed, 11 Mar 2015 09:32:37 +0000 (10:32 +0100)
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 <dingdinghua85@gmail.com>
(cherry picked from commit e0166a23c2cf655bfb4cf873be021a14d9b9be27)

Conflicts:
src/osdc/Objecter.cc
        the debug line that follows was re-indented

src/osdc/Objecter.cc

index 3c60c6c41fefd668175b67e62294cc9e34b03099..649c61ce5c5f404401f0e988ded2bf64e5db4814 100644 (file)
@@ -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;