]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
osd: subscribe to next map if flagged FULL
authorSage Weil <sage.weil@dreamhost.com>
Tue, 29 Nov 2011 16:28:57 +0000 (08:28 -0800)
committerSage Weil <sage.weil@dreamhost.com>
Tue, 29 Nov 2011 16:28:57 +0000 (08:28 -0800)
This ensures the osd finds out when we become un-full in a timely manner.

Fixes: #1755
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
src/osd/OSD.cc

index 8670ebb55b6b28c0ea068ab05e883d4952da6fa0..bb154ca020543318fc0119f3fc759727da8bdbe4 100644 (file)
@@ -3633,6 +3633,12 @@ void OSD::activate_map(ObjectStore::Transaction& t, list<Context*>& tfin)
   update_heartbeat_peers();
 
   send_pg_temp();
+
+  if (osdmap->test_flag(CEPH_OSDMAP_FULL)) {
+    dout(10) << " osdmap flagged full, doing onetime osdmap subscribe" << dendl;
+    monc->sub_want("osdmap", osdmap->get_epoch() + 1, CEPH_SUBSCRIBE_ONETIME);
+    monc->renew_subs();
+  }
 }