]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: feed OSDMaps to the Objecter
authorSage Weil <sage@inktank.com>
Sat, 17 Aug 2013 06:33:06 +0000 (23:33 -0700)
committerSage Weil <sage@inktank.com>
Fri, 30 Aug 2013 23:54:32 +0000 (16:54 -0700)
Feed every map message we see (that isn't discarded for some other
reason) to the Objecter.  It has the same continuity requirements that
the OSD has, so it should be satisfied with what we get.  It can also
request maps via our MonClient.

Signed-off-by: Sage Weil <sage@inktank.com>
src/osd/OSD.cc

index a29b4e3efd6a888d739de955abea2ab62cc0a964..cff0c8d6a52d7c1e0386b4d194c3e69590287114 100644 (file)
@@ -5034,6 +5034,13 @@ void OSD::handle_osd_map(MOSDMap *m)
   if (session)
     session->put();
 
+  // share with the objecter
+  {
+    Mutex::Locker l(service.objecter_lock);
+    m->get();
+    service.objecter->handle_osd_map(m);
+  }
+
   epoch_t first = m->get_first();
   epoch_t last = m->get_last();
   dout(3) << "handle_osd_map epochs [" << first << "," << last << "], i have "