Skip to content

Commit

Permalink
IcingaDB: Send reachablity state updates for all children recursively
Browse files Browse the repository at this point in the history
  • Loading branch information
yhabteab committed Jan 27, 2025
1 parent 1683249 commit 2889822
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions lib/icingadb/icingadb-objects.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3061,6 +3061,12 @@ void IcingaDB::ReachabilityChangeHandler(const std::set<Checkable::Ptr>& childre
for (const IcingaDB::Ptr& rw : ConfigType::GetObjectsByType<IcingaDB>()) {
for (auto& checkable : children) {
rw->UpdateState(checkable, StateUpdate::Full);
if (auto grandChildren(checkable->GetChildren()); !grandChildren.empty()) {
// Icinga DB Web needs to know about the reachability of all children, not just the direct ones.
// These might get updated with their next check result anyway, but we can't rely on that, since
// they might not be actively checked or have a very high check interval.
IcingaDB::ReachabilityChangeHandler(grandChildren);
}
}
}
}
Expand Down

0 comments on commit 2889822

Please sign in to comment.