@@ -1326,29 +1326,15 @@ void IcingaDB::UpdateState(const Checkable::Ptr& checkable, StateUpdate mode)
13261326		m_Rcon->FireAndForgetQuery (std::move (streamadd), Prio::RuntimeStateStream, {0 , 1 });
13271327	}
13281328
1329- 	UpdateDependenciesState (checkable, mode );
1329+ 	UpdateDependenciesState (checkable);
13301330}
13311331
13321332/* *
13331333 * Send dependencies state information of the given Checkable to Redis. 
13341334 * 
1335-  * For explicitly configured redundancy groups, the state information is always sent to Redis, regardless of the 
1336-  * mode parameter. The mode parameter loosely controls how and which states are sent to Redis for non-redundant 
1337-  * dependencies. The value of that parameter can be one of the following: 
1338-  *  - Volatile: Check each dependency object of the specified Checkable for its configuration before sending 
1339-  *    the state update. For instance, if the dependency is configured to ignore soft state changes, its state 
1340-  *    should not be different from the previous ones and will therefore not be sent to Redis. 
1341-  *  - RuntimeOnly: Performs an additional check to the one above and ignores dependency objects that are not within 
1342-  *    their time period. Once the dependencies pass all the necessary checks, these two mods only send the state 
1343-  *    information to the icinga:runtime:state Redis stream via XADD. 
1344-  *  - Full: Perform a full state update ignoring all the above mentioned checks. Additionally, set the same 
1345-  *    state information that is streamed into the pipeline to the Redis keys icinga:{dependency:edge,redundancygroup}:state 
1346-  *    as well. 
1347-  * 
13481335 * @param checkable The Checkable you want to send the dependencies state update for 
1349-  * @param mode The type of operation you want to perform (Volatile, RuntimeOnly, or Full) 
13501336 */  
1351- void  IcingaDB::UpdateDependenciesState (const  Checkable::Ptr& checkable, StateUpdate mode ) const 
1337+ void  IcingaDB::UpdateDependenciesState (const  Checkable::Ptr& checkable) const 
13521338{
13531339	if  (!m_Rcon || !m_Rcon->IsConnected ()) {
13541340		return ;
@@ -1373,7 +1359,6 @@ void IcingaDB::UpdateDependenciesState(const Checkable::Ptr& checkable, StateUpd
13731359		streamStates.emplace_back (std::move (xAdd));
13741360	});
13751361
1376- 	auto  now (Utility::GetTime ());
13771362	for  (auto & dependencyGroup : dependencyGroups) {
13781363		bool  isRedundancyGroup (dependencyGroup->IsRedundancyGroup ());
13791364		if  (isRedundancyGroup && dependencyGroup->GetIcingaDBIdentifier ().IsEmpty ()) {
@@ -1386,12 +1371,6 @@ void IcingaDB::UpdateDependenciesState(const Checkable::Ptr& checkable, StateUpd
13861371		auto  members (dependencyGroup->GetMembers (checkable.get ()));
13871372		for  (auto  it (members.begin ()); it != members.end (); /*  no increment */ 
13881373			auto  dep (*it);
1389- 			if  (auto  tp (dep->GetPeriod ()); !isRedundancyGroup && mode != StateUpdate::Full && tp && !tp->IsInside (now)) {
1390- 				//  When the dependency is outside its time period, and we're not performing a full
1391- 				//  state update, we don't need to send any updates as it should always be reachable.
1392- 				continue ;
1393- 			}
1394- 
13951374			auto  stateAttrs (SerializeDependencyEdgeState (dependencyGroup, dep));
13961375			//  Find all members that share the same parent starting from the iterator position ("it" inclusively),
13971376			//  and merge their relevant state information into a single one.
0 commit comments