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

(cherry picked from commit be765ce868)

Conflicts:
	engine/schema/src/com/cloud/upgrade/dao/Upgrade430to440.java
	setup/db/db/schema-430to440.sql
This commit is contained in:
Nitin Mehta 2014-05-30 14:53:42 -07:00 committed by Daan Hoogland
parent adfb44ec33
commit 27c0246e7f
2 changed files with 19 additions and 15 deletions

View File

@ -66,26 +66,30 @@ public class Upgrade430to440 implements DbUpgrade {
updateVlanUris(conn);
}
private void addExtractTemplateAndVolumeColumns(Connection conn) {
try (PreparedStatement selectTemplateInfostmt = conn.prepareStatement("SELECT * FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'cloud' AND TABLE_NAME = 'template_store_ref' AND COLUMN_NAME = 'download_url_created'");
ResultSet templateInfoResults = selectTemplateInfostmt.executeQuery();
PreparedStatement addDownloadUrlCreatedToTemplateStorerefstatement = conn.prepareStatement("ALTER TABLE `cloud`.`template_store_ref` ADD COLUMN `download_url_created` datetime");
PreparedStatement addDownloadUrlToTemplateStorerefstatement = conn.prepareStatement("ALTER TABLE `cloud`.`template_store_ref` ADD COLUMN `download_url` varchar(255)");
PreparedStatement selectVolumeInfostmt = conn.prepareStatement("SELECT * FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'cloud' AND TABLE_NAME = 'volume_store_ref' AND COLUMN_NAME = 'download_url_created'");
ResultSet volumeInfoResults = selectVolumeInfostmt.executeQuery();
PreparedStatement addDownloadUrlCreatedToVolumeStorerefstatement = conn.prepareStatement("ALTER TABLE `cloud`.`volume_store_ref` ADD COLUMN `download_url_created` datetime");
) {
private void addExtractTemplateAndVolumeColumns(Connection conn) {
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
// Add download_url_created, download_url to template_store_ref
if (!templateInfoResults.next()) {
addDownloadUrlCreatedToTemplateStorerefstatement.executeUpdate();
addDownloadUrlToTemplateStorerefstatement.executeUpdate();
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
if (!volumeInfoResults.next()) {
addDownloadUrlCreatedToVolumeStorerefstatement.executeUpdate();
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) {
@ -93,6 +97,7 @@ public class Upgrade430to440 implements DbUpgrade {
}
}
private void secondaryIpsAccountAndDomainIdsUpdate(Connection conn) {
String secondIpsSql = "SELECT id, vmId, network_id, account_id, domain_id, ip4_address FROM `cloud`.`nic_secondary_ips`";

View File

@ -2452,7 +2452,6 @@ 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);
CREATE TABLE `cloud`.`load_balancer_stickiness_policy_details` (
`id` bigint unsigned NOT NULL auto_increment,
`lb_policy_id` bigint unsigned NOT NULL COMMENT 'resource id',