You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ni...@apache.org on 2014/05/30 23:55:16 UTC

git commit: updated refs/heads/4.4-forward to be765ce

Repository: cloudstack
Updated Branches:
  refs/heads/4.4-forward 48ea9e0b5 -> be765ce86


CLOUDSTACK-6599: Add the column in Java upgrade path since 4.2 already has the extract template/volume columns


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

Branch: refs/heads/4.4-forward
Commit: be765ce8680564b743a73dd360c590c0e495c204
Parents: 48ea9e0
Author: Nitin Mehta <ni...@citrix.com>
Authored: Fri May 30 14:53:42 2014 -0700
Committer: Nitin Mehta <ni...@citrix.com>
Committed: Fri May 30 14:53:42 2014 -0700

----------------------------------------------------------------------
 .../com/cloud/upgrade/dao/Upgrade430to440.java  | 33 ++++++++++++++++++++
 setup/db/db/schema-430to440.sql                 |  4 ---
 2 files changed, 33 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/be765ce8/engine/schema/src/com/cloud/upgrade/dao/Upgrade430to440.java
----------------------------------------------------------------------
diff --git a/engine/schema/src/com/cloud/upgrade/dao/Upgrade430to440.java b/engine/schema/src/com/cloud/upgrade/dao/Upgrade430to440.java
index da71d44..b7b6bc4 100644
--- a/engine/schema/src/com/cloud/upgrade/dao/Upgrade430to440.java
+++ b/engine/schema/src/com/cloud/upgrade/dao/Upgrade430to440.java
@@ -61,8 +61,41 @@ public class Upgrade430to440 implements DbUpgrade {
     public void performDataMigration(Connection conn) {
         secondaryIpsAccountAndDomainIdsUpdate(conn);
         moveCidrsToTheirOwnTable(conn);
+        addExtractTemplateAndVolumeColumns(conn);
+
     }
 
+    private void addExtractTemplateAndVolumeColumns(Connection conn) {
+        PreparedStatement pstmt = null;
+        ResultSet rs = null;
+
+        try {
+
+            // Add download_url_created, download_url to template_store_ref
+            pstmt = conn.prepareStatement("SELECT *  FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'cloud' AND TABLE_NAME = 'template_store_ref' AND COLUMN_NAME = 'download_url_created'");
+            rs = pstmt.executeQuery();
+            if (!rs.next()) {
+                pstmt = conn.prepareStatement("ALTER TABLE `cloud`.`template_store_ref` ADD COLUMN `download_url_created` datetime");
+                pstmt.executeUpdate();
+
+                pstmt = conn.prepareStatement("ALTER TABLE `cloud`.`template_store_ref` ADD COLUMN `download_url` varchar(255)");
+                pstmt.executeUpdate();
+            }
+
+            // Add download_url_created to volume_store_ref - note download_url already exists
+            pstmt = conn.prepareStatement("SELECT *  FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'cloud' AND TABLE_NAME = 'volume_store_ref' AND COLUMN_NAME = 'download_url_created'");
+            rs = pstmt.executeQuery();
+            if (!rs.next()) {
+                pstmt = conn.prepareStatement("ALTER TABLE `cloud`.`volume_store_ref` ADD COLUMN `download_url_created` datetime");
+                pstmt.executeUpdate();
+            }
+
+        } catch (SQLException e) {
+            throw new CloudRuntimeException("Adding columns for Extract Template And Volume functionality failed");
+        }
+    }
+
+
 
     private void secondaryIpsAccountAndDomainIdsUpdate(Connection conn) {
         PreparedStatement pstmt = null;

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/be765ce8/setup/db/db/schema-430to440.sql
----------------------------------------------------------------------
diff --git a/setup/db/db/schema-430to440.sql b/setup/db/db/schema-430to440.sql
index 208c0ae..7e518e3 100644
--- a/setup/db/db/schema-430to440.sql
+++ b/setup/db/db/schema-430to440.sql
@@ -1705,7 +1705,3 @@ alter table `cloud`.`vlan` add column created datetime NULL COMMENT 'date create
 alter table `cloud`.`user_ip_address` drop key public_ip_address;
 alter table `cloud`.`user_ip_address` add UNIQUE KEY public_ip_address (public_ip_address,source_network_id, removed);
 
-ALTER TABLE `cloud`.`volume_store_ref` ADD `download_url_created` datetime;
-ALTER TABLE `cloud`.`template_store_ref` ADD `download_url_created` datetime;
-ALTER TABLE `cloud`.`template_store_ref` ADD `download_url` varchar(255);
-