Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id A2351200B72 for ; Thu, 11 Aug 2016 18:26:58 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 9F132160A90; Thu, 11 Aug 2016 16:26:58 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id ECAB2160A93 for ; Thu, 11 Aug 2016 18:26:57 +0200 (CEST) Received: (qmail 62309 invoked by uid 500); 11 Aug 2016 16:26:57 -0000 Mailing-List: contact commits-help@ambari.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: ambari-dev@ambari.apache.org Delivered-To: mailing list commits@ambari.apache.org Received: (qmail 62293 invoked by uid 99); 11 Aug 2016 16:26:57 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 11 Aug 2016 16:26:57 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 07F46E0FC4; Thu, 11 Aug 2016 16:26:57 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: dmitriusan@apache.org To: commits@ambari.apache.org Date: Thu, 11 Aug 2016 16:26:58 -0000 Message-Id: In-Reply-To: <0386961a3b7a4f448b345cb3b0480dbf@git.apache.org> References: <0386961a3b7a4f448b345cb3b0480dbf@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [2/2] ambari git commit: AMBARI-18118. AlertDefinitionCommand intermittently provides stale configurations (dlysnichenko) archived-at: Thu, 11 Aug 2016 16:26:58 -0000 AMBARI-18118. AlertDefinitionCommand intermittently provides stale configurations (dlysnichenko) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/056d83cd Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/056d83cd Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/056d83cd Branch: refs/heads/branch-2.4 Commit: 056d83cdd8285712f8983d7542285d88b0a0e53e Parents: d1c5e04 Author: Lisnichenko Dmitro Authored: Thu Aug 11 19:26:10 2016 +0300 Committer: Lisnichenko Dmitro Committed: Thu Aug 11 19:26:38 2016 +0300 ---------------------------------------------------------------------- .../server/agent/AlertDefinitionCommand.java | 39 ++------------------ .../state/alerts/AlertDefinitionHashTest.java | 7 ++++ 2 files changed, 10 insertions(+), 36 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/056d83cd/ambari-server/src/main/java/org/apache/ambari/server/agent/AlertDefinitionCommand.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/agent/AlertDefinitionCommand.java b/ambari-server/src/main/java/org/apache/ambari/server/agent/AlertDefinitionCommand.java index fdd7f1d..4d2e048 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/agent/AlertDefinitionCommand.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/agent/AlertDefinitionCommand.java @@ -17,13 +17,11 @@ */ package org.apache.ambari.server.agent; -import java.util.HashMap; import java.util.List; import java.util.Map; import org.apache.ambari.server.AmbariException; import org.apache.ambari.server.state.Cluster; -import org.apache.ambari.server.state.Config; import org.apache.ambari.server.state.ConfigHelper; import org.apache.ambari.server.state.alert.AlertDefinition; import org.apache.ambari.server.state.alert.AlertDefinitionHash; @@ -130,39 +128,8 @@ public class AlertDefinitionCommand extends AgentCommand { */ public void addConfigs(ConfigHelper configHelper, Cluster cluster) throws AmbariException { - - m_configurations = new HashMap>(); - - Map> allConfigTags = - configHelper.getEffectiveDesiredTags(cluster, m_hostName); - - for(Config clusterConfig: cluster.getAllConfigs()) { - if (null == clusterConfig) { - // !!! hard to believe - continue; - } - - Map props = new HashMap(clusterConfig.getProperties()); - - Map> configTags = new HashMap>(); - - for (Map.Entry> entry : allConfigTags.entrySet()) { - if (entry.getKey().equals(clusterConfig.getType())) { - configTags.put(clusterConfig.getType(), entry.getValue()); - } - } - - Map> properties = configHelper - .getEffectiveConfigProperties(cluster, configTags); - - if (!properties.isEmpty()) { - for (Map propertyMap : properties.values()) { - props.putAll(propertyMap); - } - } - - m_configurations.put(clusterConfig.getType(), props); - } + Map> configTags = configHelper.getEffectiveDesiredTags(cluster, m_hostName); + Map> configurations = configHelper.getEffectiveConfigProperties(cluster, configTags); + m_configurations = configurations; } } http://git-wip-us.apache.org/repos/asf/ambari/blob/056d83cd/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AlertDefinitionHashTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AlertDefinitionHashTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AlertDefinitionHashTest.java index 74a349c..c534c4a 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AlertDefinitionHashTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AlertDefinitionHashTest.java @@ -80,6 +80,7 @@ public class AlertDefinitionHashTest extends TestCase { private List m_agentDefinitions; private AlertDefinitionEntity m_hdfsService; AlertDefinitionEntity m_hdfsHost; + private ConfigHelper m_configHelper; /** * @@ -201,6 +202,12 @@ public class AlertDefinitionHashTest extends TestCase { EasyMock.replay(m_mockClusters, m_mockCluster, m_mockDao); m_hash = m_injector.getInstance(AlertDefinitionHash.class); + + // configHelper mock + m_configHelper = m_injector.getInstance(ConfigHelper.class); + EasyMock.expect(m_configHelper.getEffectiveDesiredTags((Cluster) anyObject(), EasyMock.anyString())).andReturn(new HashMap>()).anyTimes(); + EasyMock.expect(m_configHelper.getEffectiveConfigProperties((Cluster) anyObject(), (Map>) anyObject())).andReturn(new HashMap>()).anyTimes(); + EasyMock.replay(m_configHelper); } /**