From 8526a55e47c6553f5a5f3f9fdda4b329b8a75c53 Mon Sep 17 00:00:00 2001 From: Markus Frosch Date: Thu, 17 May 2018 12:57:43 +0200 Subject: [PATCH] GroupMembershipResolver: Purge IcingaTemplateRepository before refresh This is only required with a deferred GroupMembershipResolver. --- library/Director/Objects/GroupMembershipResolver.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/library/Director/Objects/GroupMembershipResolver.php b/library/Director/Objects/GroupMembershipResolver.php index 086426e6..2ba082a6 100644 --- a/library/Director/Objects/GroupMembershipResolver.php +++ b/library/Director/Objects/GroupMembershipResolver.php @@ -6,6 +6,7 @@ use Icinga\Application\Benchmark; use Icinga\Data\Filter\Filter; use Icinga\Module\Director\Db; use Icinga\Module\Director\Db\IcingaObjectFilterHelper; +use Icinga\Module\Director\Repository\IcingaTemplateRepository; use InvalidArgumentException; use LogicException; use Zend_Db_Select as ZfSelect; @@ -74,6 +75,11 @@ abstract class GroupMembershipResolver public function refreshDb($force = false) { if ($force || ! $this->isDeferred()) { + if ($this->isDeferred()) { + // ensure we are not working with cached data + IcingaTemplateRepository::clear(); + } + Benchmark::measure('Rechecking all objects'); $this->recheckAllObjects($this->getAppliedGroups()); Benchmark::measure('Recheck done, loading existing mappings');