From 99a6975ce74b6fa0e73867a95286405b67ebf403 Mon Sep 17 00:00:00 2001 From: sageweil Date: Sat, 6 Oct 2007 03:27:13 +0000 Subject: [PATCH] maybe_request_map cleanup; uninit var fix git-svn-id: https://ceph.svn.sf.net/svnroot/ceph@1887 29311d96-e01e-0410-9327-a35deaab8ce9 --- branches/sage/mds/osdc/Objecter.cc | 21 ++++++++++++--------- branches/sage/mds/osdc/Objecter.h | 1 + 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/branches/sage/mds/osdc/Objecter.cc b/branches/sage/mds/osdc/Objecter.cc index 9d31d023ed56e..e6efee1aa4a33 100644 --- a/branches/sage/mds/osdc/Objecter.cc +++ b/branches/sage/mds/osdc/Objecter.cc @@ -130,15 +130,18 @@ void Objecter::handle_osd_map(MOSDMap *m) void Objecter::maybe_request_map() { utime_t now; - - if (last_epoch_requested <= osdmap->get_epoch() || - (now = g_clock.now()) - last_epoch_requested_stamp > g_conf.objecter_map_request_interval) { - dout(10) << "maybe_request_map requesting next osd map" << dendl; - last_epoch_requested_stamp = now; - last_epoch_requested = osdmap->get_epoch()+1; - messenger->send_message(new MOSDGetMap(osdmap->get_epoch(), last_epoch_requested), - monmap->get_inst(monmap->pick_mon())); - } + if (!osdmap) goto yes; + if (last_epoch_requested <= osdmap->get_epoch()) goto yes; + now = g_clock.now(); + if (now - last_epoch_requested_stamp > g_conf.objecter_map_request_interval) goto yes; + return; + + yes: + dout(10) << "maybe_request_map requesting next osd map" << dendl; + last_epoch_requested_stamp = now; + last_epoch_requested = osdmap->get_epoch()+1; + messenger->send_message(new MOSDGetMap(osdmap->get_epoch(), last_epoch_requested), + monmap->get_inst(monmap->pick_mon())); } diff --git a/branches/sage/mds/osdc/Objecter.h b/branches/sage/mds/osdc/Objecter.h index 30b1c3840a0c4..ed5c44745604e 100644 --- a/branches/sage/mds/osdc/Objecter.h +++ b/branches/sage/mds/osdc/Objecter.h @@ -172,6 +172,7 @@ class Objecter { messenger(m), monmap(mm), osdmap(om), last_tid(0), client_inc(-1), num_unacked(0), num_uncommitted(0), + last_epoch_requested(0), client_lock(l), timer(l) { } ~Objecter() { } -- 2.39.5