AMBARI-22724. Idempotent issue on Ambari Upgrade, renameServiceDeletedColumn 
failed with column already exists exception.(vbrodetskyi)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/cd5c1cad
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/cd5c1cad
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/cd5c1cad

Branch: refs/heads/branch-feature-AMBARI-20859
Commit: cd5c1cad8f62c45de62094de2b5e442d161c9b34
Parents: e13bfb9
Author: Vitaly Brodetskyi <[email protected]>
Authored: Fri Jan 5 16:29:39 2018 +0200
Committer: Vitaly Brodetskyi <[email protected]>
Committed: Fri Jan 5 16:32:21 2018 +0200

----------------------------------------------------------------------
 .../org/apache/ambari/server/upgrade/UpgradeCatalog252.java   | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/cd5c1cad/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog252.java
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog252.java
 
b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog252.java
index 1b706d6..62e56fc 100644
--- 
a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog252.java
+++ 
b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog252.java
@@ -59,6 +59,7 @@ public class UpgradeCatalog252 extends AbstractUpgradeCatalog 
{
 
   static final String CLUSTERCONFIG_TABLE = "clusterconfig";
   static final String SERVICE_DELETED_COLUMN = "service_deleted";
+  static final String UNMAPPED_COLUMN = "unmapped";
 
   private static final String UPGRADE_TABLE = "upgrade";
   private static final String UPGRADE_TABLE_FROM_REPO_COLUMN = 
"from_repo_version_id";
@@ -141,8 +142,10 @@ public class UpgradeCatalog252 extends 
AbstractUpgradeCatalog {
    * @throws java.sql.SQLException
    */
   private void addServiceDeletedColumnToClusterConfigTable() throws 
SQLException {
-    dbAccessor.addColumn(CLUSTERCONFIG_TABLE,
-        new DBColumnInfo(SERVICE_DELETED_COLUMN, Short.class, null, 0, false));
+    if (!dbAccessor.tableHasColumn(CLUSTERCONFIG_TABLE, UNMAPPED_COLUMN)) {
+      dbAccessor.addColumn(CLUSTERCONFIG_TABLE,
+          new DBColumnInfo(SERVICE_DELETED_COLUMN, Short.class, null, 0, 
false));
+    }
   }
 
   /**

Reply via email to