You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by vb...@apache.org on 2016/09/03 00:54:11 UTC
ambari git commit: AMBARI-18296. Database Consistency Check Fails
With NPE With Missing Service From Stack.(vbrodetskyi)
Repository: ambari
Updated Branches:
refs/heads/branch-2.5 0b3b6c3df -> 5ec8d4b09
AMBARI-18296. Database Consistency Check Fails With NPE With Missing Service From Stack.(vbrodetskyi)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/5ec8d4b0
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/5ec8d4b0
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/5ec8d4b0
Branch: refs/heads/branch-2.5
Commit: 5ec8d4b09431d38126a5fb1e0d79031831487222
Parents: 0b3b6c3
Author: Vitaly Brodetskyi <vb...@hortonworks.com>
Authored: Sat Sep 3 03:53:43 2016 +0300
Committer: Vitaly Brodetskyi <vb...@hortonworks.com>
Committed: Sat Sep 3 03:53:43 2016 +0300
----------------------------------------------------------------------
.../server/checks/DatabaseConsistencyCheckHelper.java | 12 +++++++++---
.../checks/DatabaseConsistencyCheckHelperTest.java | 6 +++---
2 files changed, 12 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/5ec8d4b0/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java
index 36a2d99..fa42e8a 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java
@@ -540,9 +540,15 @@ public class DatabaseConsistencyCheckHelper {
Map<String, ServiceInfo> serviceInfoMap = ambariMetaInfo.getServices(stackName, stackVersion);
for (String serviceName : serviceNames) {
ServiceInfo serviceInfo = serviceInfoMap.get(serviceName);
- Set<String> configTypes = serviceInfo.getConfigTypeAttributes().keySet();
- for (String configType : configTypes) {
- stackServiceConfigs.put(serviceName, configType);
+ if (serviceInfo != null) {
+ Set<String> configTypes = serviceInfo.getConfigTypeAttributes().keySet();
+ for (String configType : configTypes) {
+ stackServiceConfigs.put(serviceName, configType);
+ }
+ } else {
+ LOG.warn("Service {} is not available for stack {} in cluster {}",
+ serviceName, stackName + "-" + stackVersion, clusterName);
+ warningAvailable = true;
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5ec8d4b0/ambari-server/src/test/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelperTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelperTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelperTest.java
index a7c77e1..86a57c5 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelperTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelperTest.java
@@ -249,9 +249,9 @@ public class DatabaseConsistencyCheckHelperTest {
expect(mockHDFSServiceInfo.getConfigTypeAttributes()).andReturn(configAttributes);
expect(mockAmbariMetainfo.getServices("HDP", "2.2")).andReturn(services);
- expect(serviceConfigResultSet.next()).andReturn(true);
- expect(serviceConfigResultSet.getString("service_name")).andReturn("HDFS");
- expect(serviceConfigResultSet.getString("type_name")).andReturn("core-site");
+ expect(serviceConfigResultSet.next()).andReturn(true).times(2);
+ expect(serviceConfigResultSet.getString("service_name")).andReturn("HDFS").andReturn("HBASE");
+ expect(serviceConfigResultSet.getString("type_name")).andReturn("core-site").andReturn("hbase-env");
expect(stackResultSet.next()).andReturn(true);
expect(stackResultSet.getString("stack_name")).andReturn("HDP");
expect(stackResultSet.getString("stack_version")).andReturn("2.2");