Repository: ambari Updated Branches: refs/heads/trunk 0c6cf8147 -> 1fefbbace
AMBARI-22320. Some pre-upgrade checks do not work when upgrading from IOP to HDP-2.6.3 (ncole) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/1fefbbac Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/1fefbbac Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/1fefbbac Branch: refs/heads/trunk Commit: 1fefbbacedaefe342577246f1bbb7bf3fe9c2bc1 Parents: 0c6cf81 Author: Nate Cole <[email protected]> Authored: Sat Nov 4 07:25:31 2017 -0400 Committer: Nate Cole <[email protected]> Committed: Sat Nov 4 07:25:31 2017 -0400 ---------------------------------------------------------------------- .../server/state/repository/VersionDefinitionXml.java | 10 +++++++--- .../server/state/repository/VersionDefinitionTest.java | 8 ++++++++ 2 files changed, 15 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/1fefbbac/ambari-server/src/main/java/org/apache/ambari/server/state/repository/VersionDefinitionXml.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/repository/VersionDefinitionXml.java b/ambari-server/src/main/java/org/apache/ambari/server/state/repository/VersionDefinitionXml.java index 634ab04..62f78de 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/state/repository/VersionDefinitionXml.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/state/repository/VersionDefinitionXml.java @@ -320,10 +320,14 @@ public class VersionDefinitionXml { summary.setVersions(manifest.version, summaryReleaseVersion); - // !!! installed service already meets the release version, then nothing to upgrade - // !!! TODO should this be using the release compatible-with field? - if (VersionUtils.compareVersionsWithBuild(versionToCompare, serviceVersion, 4) > 0) { + if (RepositoryType.STANDARD == release.repositoryType) { summary.setUpgrade(true); + } else { + // !!! installed service already meets the release version, then nothing to upgrade + // !!! TODO should this be using the release compatible-with field? + if (VersionUtils.compareVersionsWithBuild(versionToCompare, serviceVersion, 4) > 0) { + summary.setUpgrade(true); + } } } http://git-wip-us.apache.org/repos/asf/ambari/blob/1fefbbac/ambari-server/src/test/java/org/apache/ambari/server/state/repository/VersionDefinitionTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/repository/VersionDefinitionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/repository/VersionDefinitionTest.java index 370a14f..6f33c7e 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/state/repository/VersionDefinitionTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/state/repository/VersionDefinitionTest.java @@ -28,6 +28,7 @@ import static org.junit.Assert.assertTrue; import java.io.File; import java.lang.reflect.Field; import java.util.Collection; +import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -425,6 +426,13 @@ public class VersionDefinitionTest { summary = xml.getClusterSummary(cluster); assertEquals(0, summary.getAvailableServiceNames().size()); + f = new File("src/test/resources/version_definition_test_maint.xml"); + xml = VersionDefinitionXml.load(f.toURI().toURL()); + xml.release.repositoryType = RepositoryType.STANDARD; + xml.availableServices = Collections.emptyList(); + summary = xml.getClusterSummary(cluster); + assertEquals(2, summary.getAvailableServiceNames().size()); + f = new File("src/test/resources/version_definition_test_maint_partial.xml"); xml = VersionDefinitionXml.load(f.toURI().toURL()); summary = xml.getClusterSummary(cluster);
