summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSage Weil <sage@inktank.com>2012-11-25 09:34:02 -0800
committerSage Weil <sage@inktank.com>2012-11-25 09:34:02 -0800
commit6890675b87bf4b218e05b8821d602c3c1b457f13 (patch)
tree7bced2af608a2ae076149667d0bb01d320c5ba4f
parent7602a055764aff1c50b1e2641a3e703845cbe471 (diff)
downloadceph-6890675b87bf4b218e05b8821d602c3c1b457f13.tar.gz
monmap: fix crash from dup initial seed mons
Fix bug reproduced by -m hostname,ip_that_hosthname_resolves_to Backport: argonaut Reported-by: Drunkard Zhang <gongfan193@gmail.com> Signed-off-by: Sage Weil <sage@inktank.com>
-rw-r--r--src/mon/MonMap.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mon/MonMap.cc b/src/mon/MonMap.cc
index 8d26d41f7b1..5a9d6ce96bd 100644
--- a/src/mon/MonMap.cc
+++ b/src/mon/MonMap.cc
@@ -188,7 +188,9 @@ int MonMap::build_from_host_list(std::string hostlist, std::string prefix)
addrs[i].set_port(CEPH_MON_PORT);
string name = prefix;
name += n;
- add(name, addrs[i]);
+ if (!contains(addrs[i]) &&
+ !contains(name))
+ add(name, addrs[i]);
}
return 0;
}