aboutsummaryrefslogtreecommitdiffstats
path: root/configd/src/apps/sentinel/connectivity.cpp
diff options
context:
space:
mode:
authorArne Juul <arnej@verizonmedia.com>2021-06-10 10:50:00 +0000
committerArne Juul <arnej@verizonmedia.com>2021-06-10 10:50:00 +0000
commit5036748a5a18f1dee457a185ad42588f98010312 (patch)
tree4e5a13609649a710684a48dddf8dcbb1cab05c4f /configd/src/apps/sentinel/connectivity.cpp
parent493268d08571d5912f98dc61b47c47b6a1e52f6a (diff)
minor cleanup, remove AFFIRMED_DOWN
Diffstat (limited to 'configd/src/apps/sentinel/connectivity.cpp')
-rw-r--r--configd/src/apps/sentinel/connectivity.cpp18
1 files changed, 7 insertions, 11 deletions
diff --git a/configd/src/apps/sentinel/connectivity.cpp b/configd/src/apps/sentinel/connectivity.cpp
index fcdcb88dc55..32d4d123a95 100644
--- a/configd/src/apps/sentinel/connectivity.cpp
+++ b/configd/src/apps/sentinel/connectivity.cpp
@@ -27,11 +27,10 @@ namespace {
std::string toString(CcResult value) {
switch (value) {
case CcResult::UNKNOWN: return "BAD: missing result"; // very very bad
- case CcResult::REMOTE_PING_FAIL: return "connect OK, but reverse check FAILED"; // very bad
+ case CcResult::INDIRECT_PING_FAIL: return "connect OK, but reverse check FAILED"; // very bad
case CcResult::UNREACHABLE_UP: return "unreachable from me, but up"; // very bad
case CcResult::CONN_FAIL: return "failed to connect"; // bad
- case CcResult::AFFIRMED_DOWN: return "affirmed down"; // a problem, but probably not on this end
- case CcResult::REMOTE_PING_UNAVAIL: return "connect OK (but reverse check unavailable)"; // unfortunate
+ case CcResult::INDIRECT_PING_UNAVAIL: return "connect OK (but reverse check unavailable)"; // unfortunate
case CcResult::ALL_OK: return "OK: both ways connectivity verified"; // good
}
LOG(error, "Unknown CcResult enum value: %d", (int)value);
@@ -106,15 +105,13 @@ void classifyConnFails(ConnectivityMap &connectivityMap,
size_t numReportsUp = 0;
size_t numReportsDown = 0;
for (const auto & [hostname, probe] : cornerProbes) {
- if (probe.result() == CcResult::REMOTE_PING_FAIL) ++numReportsDown;
+ if (probe.result() == CcResult::INDIRECT_PING_FAIL) ++numReportsDown;
if (probe.result() == CcResult::ALL_OK) ++numReportsUp;
}
- if (numReportsUp > numReportsDown) {
+ if (numReportsUp > 0) {
LOG(debug, "Unreachable: %s is up according to %zd hosts (down according to me + %zd others)",
nameToCheck.c_str(), numReportsUp, numReportsDown);
cmIter->second.classifyResult(CcResult::UNREACHABLE_UP);
- } else if ((numReportsUp == 0) && (numReportsDown > 0)) {
- cmIter->second.classifyResult(CcResult::AFFIRMED_DOWN);
}
}
}
@@ -150,7 +147,6 @@ Connectivity::checkConnectivity(RpcServer &rpcServer) {
classifyConnFails(connectivityMap, _checkSpecs, rpcServer);
size_t numProblematic = 0;
size_t numUpButBad = 0;
- bool allChecksOk = true;
for (const auto & [hostname, check] : connectivityMap) {
std::string detail = toString(check.result());
std::string prev = _detailsPerHost[hostname];
@@ -161,20 +157,20 @@ Connectivity::checkConnectivity(RpcServer &rpcServer) {
LOG_ASSERT(check.result() != CcResult::UNKNOWN);
switch (check.result()) {
case CcResult::UNREACHABLE_UP:
- case CcResult::REMOTE_PING_FAIL:
+ case CcResult::INDIRECT_PING_FAIL:
++numUpButBad;
++numProblematic;
break;
- case CcResult::AFFIRMED_DOWN:
case CcResult::CONN_FAIL:
++numProblematic;
break;
case CcResult::UNKNOWN:
- case CcResult::REMOTE_PING_UNAVAIL:
+ case CcResult::INDIRECT_PING_UNAVAIL:
case CcResult::ALL_OK:
break;
}
}
+ bool allChecksOk = true;
if (numUpButBad > size_t(_config.maxBadReverseCount)) {
LOG(warning, "%zu of %zu nodes up but with network connectivity problems (max is %d)",
numUpButBad, clusterSize, _config.maxBadReverseCount);