]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: do not send peering messages during init
authorSage Weil <sage@inktank.com>
Sun, 5 Jan 2014 06:39:35 +0000 (22:39 -0800)
committerGreg Farnum <greg@inktank.com>
Mon, 31 Mar 2014 16:54:58 +0000 (09:54 -0700)
Do not send any peering messages while we are still working our way
through init().

Fixes: #7093
Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit 35da8f9d80e0c6c33fb6c6e00f0bf38f1eb87d0e)

src/osd/OSD.cc

index 379b56dd350dcb2bc54fac7317da75c289875db3..ed194d644525c6c6e0101160e136491c6d93fa1f 100644 (file)
@@ -6039,7 +6039,8 @@ bool OSD::compat_must_dispatch_immediately(PG *pg)
 
 void OSD::dispatch_context(PG::RecoveryCtx &ctx, PG *pg, OSDMapRef curmap)
 {
-  if (service.get_osdmap()->is_up(whoami)) {
+  if (service.get_osdmap()->is_up(whoami) &&
+      is_active()) {
     do_notifies(*ctx.notify_list, curmap);
     do_queries(*ctx.query_map, curmap);
     do_infos(*ctx.info_map, curmap);