From 14a49433496360b30498aa01f2ec9bd3598d9be5 Mon Sep 17 00:00:00 2001 From: Greg Farnum Date: Thu, 5 Jan 2012 15:29:32 -0800 Subject: [PATCH] mon: elector needs to reset leader_acked on every election start Otherwise you never reset the leader_acked after a failed election attempt, so if mon 0 is available on the first round but then fails, you never make progress! Signed-off-by: Greg Farnum --- src/mon/Elector.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mon/Elector.cc b/src/mon/Elector.cc index dff8020f314ff..1e2abee8ad502 100644 --- a/src/mon/Elector.cc +++ b/src/mon/Elector.cc @@ -56,7 +56,6 @@ void Elector::bump_epoch(epoch_t e) // clear up some state electing_me = false; acked_me.clear(); - leader_acked = -1; } @@ -74,6 +73,7 @@ void Elector::start() start_stamp = ceph_clock_now(g_ceph_context); electing_me = true; acked_me.insert(mon->rank); + leader_acked = -1; // bcast to everyone else for (unsigned i=0; imonmap->size(); ++i) { -- 2.39.5