From: Gunnar Beutner Date: Thu, 21 Jan 2016 09:32:38 +0000 (+0100) Subject: Make sure we're not running command_endpoint-based checks more than once X-Git-Tag: v2.5.0~603 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=72c3b6d75b72cec58595b4658abf704af60836f6;p=icinga2 Make sure we're not running command_endpoint-based checks more than once refs #10963 --- diff --git a/lib/icinga/checkable-check.cpp b/lib/icinga/checkable-check.cpp index 6272153a9..3068c9847 100644 --- a/lib/icinga/checkable-check.cpp +++ b/lib/icinga/checkable-check.cpp @@ -451,6 +451,10 @@ void Checkable::ExecuteCheck(void) if (listener) listener->SyncSendMessage(endpoint, message); + /* Re-schedule the check so we don't run it again until after we've received + a check result from the remote instance. The check will be re-scheduled + using the proper check interval once we've received a check result. */ + SetNextCheck(Utility::GetTime() + GetCheckCommand()->GetTimeout() + 30); } else if (Application::GetInstance()->GetStartTime() < Utility::GetTime() - 30) { /* fail to perform check on unconnected endpoint */ cr->SetState(ServiceUnknown);