]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/PrimaryLogPG: request osdmap update in the right block 17829/head
authorJosh Durgin <jdurgin@redhat.com>
Wed, 20 Sep 2017 05:18:35 +0000 (01:18 -0400)
committerJosh Durgin <jdurgin@redhat.com>
Wed, 20 Sep 2017 05:48:44 +0000 (01:48 -0400)
Fixes: http://tracker.ceph.com/issues/21428
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
(cherry picked from commit afc6624f768ea3c6e2d155122797db5cce8836f7)

src/osd/PrimaryLogPG.cc

index 7a6c24a0c2800e836d15f54d5d8f8a8589e8021b..2877c28d67a618da2577b9b744aee684a599c3b9 100644 (file)
@@ -1648,7 +1648,6 @@ void PrimaryLogPG::do_request(
             << p->first << " not empty, queueing" << dendl;
     p->second.push_back(op);
     op->mark_delayed("waiting_for_map not empty");
-    osd->request_osdmap_update(op->min_epoch);
     return;
   }
   if (!have_same_or_newer_map(op->min_epoch)) {
@@ -1656,6 +1655,7 @@ void PrimaryLogPG::do_request(
             << ", queue on waiting_for_map " << op->get_source() << dendl;
     waiting_for_map[op->get_source()].push_back(op);
     op->mark_delayed("op must wait for map");
+    osd->request_osdmap_update(op->min_epoch);
     return;
   }