AMBARI-19082. Ambari Server upgrade from 2.0.2 to 2.2.2 changed the following configs and added a port of -1.(vbrodetskyi)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/edf8ab24 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/edf8ab24 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/edf8ab24 Branch: refs/heads/branch-feature-AMBARI-18456 Commit: edf8ab2432af6b73f73c4ae386ff13c93c6c38c2 Parents: a00ffff Author: Vitaly Brodetskyi <vbrodets...@hortonworks.com> Authored: Tue Dec 6 00:06:31 2016 +0200 Committer: Vitaly Brodetskyi <vbrodets...@hortonworks.com> Committed: Tue Dec 6 00:06:31 2016 +0200 ---------------------------------------------------------------------- .../server/upgrade/AbstractUpgradeCatalog.java | 21 ++++++++++++-------- .../server/upgrade/UpgradeCatalog210Test.java | 2 ++ 2 files changed, 15 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/edf8ab24/ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java index ce9fcc6..7f91a68 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java @@ -17,6 +17,11 @@ */ package org.apache.ambari.server.upgrade; +import javax.persistence.EntityManager; +import javax.xml.bind.JAXBException; +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; + import java.io.File; import java.io.FileReader; import java.io.FilenameFilter; @@ -42,11 +47,6 @@ import java.util.TreeMap; import java.util.regex.Matcher; import java.util.regex.Pattern; -import javax.persistence.EntityManager; -import javax.xml.bind.JAXBException; -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; - import org.apache.ambari.server.AmbariException; import org.apache.ambari.server.api.services.AmbariMetaInfo; import org.apache.ambari.server.configuration.Configuration; @@ -447,11 +447,16 @@ public abstract class AbstractUpgradeCatalog implements UpgradeCatalog { Config hdfsSiteConfig = cluster.getDesiredConfigByType(CONFIGURATION_TYPE_HDFS_SITE); if (hdfsSiteConfig != null) { Map<String, String> properties = hdfsSiteConfig.getProperties(); + if (properties.containsKey("dfs.internal.nameservices")) { + return true; + } String nameServices = properties.get(PROPERTY_DFS_NAMESERVICES); if (!StringUtils.isEmpty(nameServices)) { - String namenodes = properties.get(String.format("dfs.ha.namenodes.%s", nameServices)); - if (!StringUtils.isEmpty(namenodes)) { - return (namenodes.split(",").length > 1); + for (String nameService : nameServices.split(",")) { + String namenodes = properties.get(String.format("dfs.ha.namenodes.%s", nameService)); + if (!StringUtils.isEmpty(namenodes)) { + return (namenodes.split(",").length > 1); + } } } } http://git-wip-us.apache.org/repos/asf/ambari/blob/edf8ab24/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog210Test.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog210Test.java b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog210Test.java index 3bff060..0bd8f48 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog210Test.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog210Test.java @@ -880,6 +880,8 @@ public class UpgradeCatalog210Test { final Map<String, String> propertiesExpectedHdfs = new HashMap<String, String>(); final Map<String, String> propertiesExpectedCoreSite = new HashMap<String, String>(); + propertiesExpectedHdfs.put("dfs.nameservices", "nncl1,nncl2"); + propertiesExpectedHdfs.put("dfs.ha.namenodes.nncl2", "nn1,nn2"); propertiesExpectedCoreSite.put("fs.defaultFS", "hdfs://EXAMPLE.COM:8020"); final Injector mockInjector = Guice.createInjector(new AbstractModule() { @Override