AMBARI-5583 - Ambari SCOM server doesn't support MR2 HistoryServer in Hadoop2.1
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/16affea2 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/16affea2 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/16affea2 Branch: refs/heads/trunk Commit: 16affea25e805322edaf377d144256c53250cd66 Parents: 8be3441 Author: Artem Baranchuk <[email protected]> Authored: Sun Apr 27 17:31:33 2014 +0300 Committer: Artem Baranchuk <[email protected]> Committed: Sun Apr 27 19:47:31 2014 +0300 ---------------------------------------------------------------------- .../java/org/apache/ambari/msi/ClusterDefinition.java | 10 ++++++++++ .../java/org/apache/ambari/scom/SQLProviderModule.java | 7 +++++-- .../org/apache/ambari/msi/ClusterDefinitionTest.java | 12 ++++++++++++ 3 files changed, 27 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/16affea2/contrib/ambari-scom/ambari-scom-server/src/main/java/org/apache/ambari/msi/ClusterDefinition.java ---------------------------------------------------------------------- diff --git a/contrib/ambari-scom/ambari-scom-server/src/main/java/org/apache/ambari/msi/ClusterDefinition.java b/contrib/ambari-scom/ambari-scom-server/src/main/java/org/apache/ambari/msi/ClusterDefinition.java index c9b727b..0d54092 100644 --- a/contrib/ambari-scom/ambari-scom-server/src/main/java/org/apache/ambari/msi/ClusterDefinition.java +++ b/contrib/ambari-scom/ambari-scom-server/src/main/java/org/apache/ambari/msi/ClusterDefinition.java @@ -225,6 +225,16 @@ public class ClusterDefinition { return null; } + public Integer getMinorStackVersion() { + if(StringUtils.isNotEmpty(versionId)) { + String majorVersion = StringUtils.substring(versionId, 6, 7); + if(StringUtils.isNotEmpty(majorVersion)) { + return Integer.parseInt(majorVersion); + } + } + return null; + } + // ----- ClusterDefinition ------------------------------------------------- /** http://git-wip-us.apache.org/repos/asf/ambari/blob/16affea2/contrib/ambari-scom/ambari-scom-server/src/main/java/org/apache/ambari/scom/SQLProviderModule.java ---------------------------------------------------------------------- diff --git a/contrib/ambari-scom/ambari-scom-server/src/main/java/org/apache/ambari/scom/SQLProviderModule.java b/contrib/ambari-scom/ambari-scom-server/src/main/java/org/apache/ambari/scom/SQLProviderModule.java index c403df3..b5cdb09 100644 --- a/contrib/ambari-scom/ambari-scom-server/src/main/java/org/apache/ambari/scom/SQLProviderModule.java +++ b/contrib/ambari-scom/ambari-scom-server/src/main/java/org/apache/ambari/scom/SQLProviderModule.java @@ -62,13 +62,16 @@ public class SQLProviderModule extends DefaultProviderModule implements HostInfo private void initServiceNames() { Integer majorStackVersion = clusterDefinition.getMajorStackVersion(); + Integer minorStackVersion = clusterDefinition.getMinorStackVersion(); if(majorStackVersion != null) { - serviceNames.put("HIVE_SERVER", majorStackVersion == 1 ? "hiveserver" : "hiveserver2"); + serviceNames.put("HIVE_SERVER", majorStackVersion == 1 ? "hiveserver" : "hiveserver2"); + if(minorStackVersion != null) { + serviceNames.put("HISTORYSERVER", majorStackVersion > 1 && minorStackVersion > 0 ? "jobhistoryserver" : "historyserver"); + } } serviceNames.put("NAMENODE", "namenode"); serviceNames.put("SECONDARY_NAMENODE", "secondarynamenode"); serviceNames.put("JOBTRACKER", "jobtracker"); - serviceNames.put("HISTORYSERVER", "historyserver"); serviceNames.put("HIVE_METASTORE", "metastore"); serviceNames.put("HIVE_CLIENT", "hwi"); serviceNames.put("OOZIE_SERVER", "oozieservice"); http://git-wip-us.apache.org/repos/asf/ambari/blob/16affea2/contrib/ambari-scom/ambari-scom-server/src/test/java/org/apache/ambari/msi/ClusterDefinitionTest.java ---------------------------------------------------------------------- diff --git a/contrib/ambari-scom/ambari-scom-server/src/test/java/org/apache/ambari/msi/ClusterDefinitionTest.java b/contrib/ambari-scom/ambari-scom-server/src/test/java/org/apache/ambari/msi/ClusterDefinitionTest.java index e83924f..ffdd10a 100644 --- a/contrib/ambari-scom/ambari-scom-server/src/test/java/org/apache/ambari/msi/ClusterDefinitionTest.java +++ b/contrib/ambari-scom/ambari-scom-server/src/test/java/org/apache/ambari/msi/ClusterDefinitionTest.java @@ -351,4 +351,16 @@ public class ClusterDefinitionTest { verify(mockClusterDefinitionProvider, mockHostInfoProvider, mockStateProvider); } + + @Test + public void testGetMajorStackVersion() { + TestClusterDefinitionProvider testClusterDefinitionProvider = new TestClusterDefinitionProvider("clusterproperties_HDP2.txt", "myCluster", "HDP-2.0.6"); + ClusterDefinition clusterDefinition = new ClusterDefinition(new TestStateProvider(), testClusterDefinitionProvider, new TestHostInfoProvider()); + + Integer majorVersion = clusterDefinition.getMajorStackVersion(); + Integer minorVersion = clusterDefinition.getMinorStackVersion(); + + Assert.assertTrue(2 == majorVersion); + Assert.assertTrue(0 == minorVersion); + } }
