On recovery: re-check children

This commit is contained in:
Alexander A. Klimov 2020-12-02 12:24:40 +01:00
parent 3c15e71e19
commit 4b0313d3f3

View File

@ -242,6 +242,20 @@ void Checkable::ProcessCheckResult(const CheckResult::Ptr& cr, const MessageOrig
OnReachabilityChanged(this, cr, children, origin);
}
if (recovery) {
for (auto& child : children) {
if (child->GetProblem() && child->GetEnableActiveChecks()) {
auto nextCheck (now + Utility::Random() % 60);
ObjectLock oLock (child);
if (nextCheck < child->GetNextCheck()) {
child->SetNextCheck(nextCheck);
}
}
}
}
if (!reachable)
SetLastStateUnreachable(Utility::GetTime());