You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ds...@apache.org on 2014/08/18 18:08:10 UTC
git commit: AMBARI-6891 Ambari upgrade: Accomodate renaming
pig-content to content in 1.7.0 ugradeCatalog (dsen)
Repository: ambari
Updated Branches:
refs/heads/trunk 1730dc5b8 -> f0be435e0
AMBARI-6891 Ambari upgrade: Accomodate renaming pig-content to content in 1.7.0 ugradeCatalog (dsen)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/f0be435e
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/f0be435e
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/f0be435e
Branch: refs/heads/trunk
Commit: f0be435e07349e53fb2b9ecf33952efd25d0c90d
Parents: 1730dc5
Author: Dmytro Sen <ds...@hortonworks.com>
Authored: Mon Aug 18 19:08:04 2014 +0300
Committer: Dmytro Sen <ds...@hortonworks.com>
Committed: Mon Aug 18 19:08:04 2014 +0300
----------------------------------------------------------------------
.../server/upgrade/UpgradeCatalog170.java | 33 ++++++++++++++++++++
.../server/upgrade/UpgradeCatalog170Test.java | 9 +++++-
2 files changed, 41 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/f0be435e/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java
index 9888177..33a87a7 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java
@@ -83,8 +83,11 @@ import com.google.inject.Injector;
*/
public class UpgradeCatalog170 extends AbstractUpgradeCatalog {
private static final String CONTENT_FIELD_NAME = "content";
+ private static final String PIG_CONTENT_FIELD_NAME = "pig-content";
private static final String ENV_CONFIGS_POSTFIX = "-env";
+ private static final String PIG_PROPERTIES_CONFIG_TYPE = "pig-properties";
+
private static final String ALERT_TABLE_DEFINITION = "alert_definition";
private static final String ALERT_TABLE_HISTORY = "alert_history";
private static final String ALERT_TABLE_CURRENT = "alert_current";
@@ -560,6 +563,7 @@ public class UpgradeCatalog170 extends AbstractUpgradeCatalog {
moveGlobalsToEnv();
addEnvContentFields();
addMissingConfigs();
+ renamePigProperties();
upgradePermissionModel();
}
@@ -744,6 +748,35 @@ public class UpgradeCatalog170 extends AbstractUpgradeCatalog {
false);
}
+ /**
+ * Rename pig-content to content in pig-properties config
+ * @throws AmbariException
+ */
+ protected void renamePigProperties() throws AmbariException {
+ ConfigHelper configHelper = injector.getInstance(ConfigHelper.class);
+ AmbariManagementController ambariManagementController = injector.getInstance(
+ AmbariManagementController.class);
+
+ Clusters clusters = ambariManagementController.getClusters();
+ if (clusters == null) {
+ return;
+ }
+
+ Map<String, Cluster> clusterMap = clusters.getClusters();
+
+ if (clusterMap != null && !clusterMap.isEmpty()) {
+ for (final Cluster cluster : clusterMap.values()) {
+ Config oldConfig = cluster.getDesiredConfigByType(PIG_PROPERTIES_CONFIG_TYPE);
+ if (oldConfig != null) {
+ Map<String, String> properties = oldConfig.getProperties();
+ String value = properties.remove(PIG_CONTENT_FIELD_NAME);
+ properties.put(CONTENT_FIELD_NAME, value);
+ configHelper.createConfigType(cluster, ambariManagementController, PIG_PROPERTIES_CONFIG_TYPE, properties, "ambari-upgrade");
+ }
+ }
+ }
+ }
+
protected void addEnvContentFields() throws AmbariException {
ConfigHelper configHelper = injector.getInstance(ConfigHelper.class);
AmbariManagementController ambariManagementController = injector.getInstance(
http://git-wip-us.apache.org/repos/asf/ambari/blob/f0be435e/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java
index 9325e9f..4033f03 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java
@@ -219,6 +219,7 @@ public class UpgradeCatalog170Test {
Cluster cluster = createStrictMock(Cluster.class);
Clusters clusters = createStrictMock(Clusters.class);
Config config = createStrictMock(Config.class);
+ Config pigConfig = createStrictMock(Config.class);
UserDAO userDAO = createNiceMock(UserDAO.class);
PrincipalDAO principalDAO = createNiceMock(PrincipalDAO.class);
@@ -256,6 +257,9 @@ public class UpgradeCatalog170Test {
globalConfigs.put("prop1", "val1");
globalConfigs.put("smokeuser_keytab", "val2");
+ Map<String, String> pigSettings = new HashMap<String, String>();
+ pigSettings.put("pig-content", "foo");
+
Set<String> envDicts = new HashSet<String>();
envDicts.add("hadoop-env");
envDicts.add("global");
@@ -331,8 +335,11 @@ public class UpgradeCatalog170Test {
expect(permissionDAO.findClusterOperatePermission()).andReturn(null);
expect(permissionDAO.findClusterReadPermission()).andReturn(null);
+ expect(cluster.getDesiredConfigByType("pig-properties")).andReturn(pigConfig).anyTimes();
+ expect(pigConfig.getProperties()).andReturn(pigSettings).anyTimes();
+
replay(entityManager, trans, upgradeCatalog, cb, cq, hrc, q);
- replay(dbAccessor, configuration, injector, cluster, clusters, amc, config, configHelper);
+ replay(dbAccessor, configuration, injector, cluster, clusters, amc, config, configHelper, pigConfig);
replay(userDAO, clusterDAO, viewDAO, viewInstanceDAO, permissionDAO);
Class<?> c = AbstractUpgradeCatalog.class;