From: Sage Weil Date: Tue, 29 Oct 2013 17:10:21 +0000 (-0700) Subject: mon/PGMonitor: always send pg creations after mapping X-Git-Tag: v0.72-rc1~4^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F786%2Fhead;p=ceph.git mon/PGMonitor: always send pg creations after mapping At some point in the dumpling cycle I separated the map stage from the send stage. We can send the creates any time we have a non-zero osdmap epoch, and are in good shape as long as we do the map step after the osdmap is loaded (hence the post_paxos_update). Some background: We originally introduced the map-but-don't send in a2fe0137, at which point all was well because we only called it on ceph-mon startup. Later, this turned into post_paxos_update in e635c478, at which point it was now called by a running monitor.. but we didn't add in the send_pg_creates(). This is where this bug stems from. This particular path is responsible for the stalled test referenced in bug #6673. Backport: dumpling Signed-off-by: Sage Weil --- diff --git a/src/mon/PGMonitor.cc b/src/mon/PGMonitor.cc index c14872d87ef1..0ba7970a0c50 100644 --- a/src/mon/PGMonitor.cc +++ b/src/mon/PGMonitor.cc @@ -306,6 +306,7 @@ void PGMonitor::post_paxos_update() { if (mon->osdmon()->osdmap.get_epoch()) { map_pg_creates(); + send_pg_creates(); } }