Return-Path: X-Original-To: apmail-cloudstack-commits-archive@www.apache.org Delivered-To: apmail-cloudstack-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id A304911999 for ; Tue, 5 Aug 2014 15:49:48 +0000 (UTC) Received: (qmail 22702 invoked by uid 500); 5 Aug 2014 15:49:48 -0000 Delivered-To: apmail-cloudstack-commits-archive@cloudstack.apache.org Received: (qmail 22676 invoked by uid 500); 5 Aug 2014 15:49:48 -0000 Mailing-List: contact commits-help@cloudstack.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cloudstack.apache.org Delivered-To: mailing list commits@cloudstack.apache.org Received: (qmail 22667 invoked by uid 99); 5 Aug 2014 15:49:48 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 05 Aug 2014 15:49:48 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id 431C19BFBD8; Tue, 5 Aug 2014 15:49:48 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: dahn@apache.org To: commits@cloudstack.apache.org Message-Id: <16ec96c636c54a2fa1b31db81c9d4da5@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: git commit: updated refs/heads/hotfix/4.4-svm-upgrade to 21a6a69 Date: Tue, 5 Aug 2014 15:49:48 +0000 (UTC) Repository: cloudstack Updated Branches: refs/heads/hotfix/4.4-svm-upgrade 00c2696e7 -> 21a6a6993 remove update to 4.3 templates for 4.4 Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/21a6a699 Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/21a6a699 Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/21a6a699 Branch: refs/heads/hotfix/4.4-svm-upgrade Commit: 21a6a6993e1ac73a1f4e790e0b004377f5ffd708 Parents: 00c2696 Author: Daan Hoogland Authored: Tue Aug 5 17:48:58 2014 +0200 Committer: Daan Hoogland Committed: Tue Aug 5 17:48:58 2014 +0200 ---------------------------------------------------------------------- .../com/cloud/upgrade/dao/Upgrade421to430.java | 158 ------------------- 1 file changed, 158 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/21a6a699/engine/schema/src/com/cloud/upgrade/dao/Upgrade421to430.java ---------------------------------------------------------------------- diff --git a/engine/schema/src/com/cloud/upgrade/dao/Upgrade421to430.java b/engine/schema/src/com/cloud/upgrade/dao/Upgrade421to430.java index 50822a3..1ab462a 100644 --- a/engine/schema/src/com/cloud/upgrade/dao/Upgrade421to430.java +++ b/engine/schema/src/com/cloud/upgrade/dao/Upgrade421to430.java @@ -24,15 +24,10 @@ import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Types; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Map; -import java.util.Set; import org.apache.commons.lang.StringUtils; import org.apache.log4j.Logger; -import com.cloud.hypervisor.Hypervisor; import com.cloud.utils.crypt.DBEncryptionUtil; import com.cloud.utils.exception.CloudRuntimeException; import com.cloud.utils.script.Script; @@ -70,7 +65,6 @@ public class Upgrade421to430 implements DbUpgrade { encryptLdapConfigParams(conn); encryptImageStoreDetails(conn); upgradeMemoryOfSsvmOffering(conn); - updateSystemVmTemplates(conn); } private void upgradeMemoryOfSsvmOffering(Connection conn) { @@ -195,158 +189,6 @@ public class Upgrade421to430 implements DbUpgrade { } - private void updateSystemVmTemplates(Connection conn) { - s_logger.debug("Updating System Vm template IDs"); - try{ - //Get all hypervisors in use - Set hypervisorsListInUse = new HashSet(); - try(PreparedStatement pstmt = conn.prepareStatement("select distinct(hypervisor_type) from `cloud`.`cluster` where removed is null"); - ResultSet rs = pstmt.executeQuery(); - ) { - while(rs.next()){ - switch (Hypervisor.HypervisorType.getType(rs.getString(1))) { - case XenServer: hypervisorsListInUse.add(Hypervisor.HypervisorType.XenServer); - break; - case KVM: hypervisorsListInUse.add(Hypervisor.HypervisorType.KVM); - break; - case VMware: hypervisorsListInUse.add(Hypervisor.HypervisorType.VMware); - break; - case Hyperv: hypervisorsListInUse.add(Hypervisor.HypervisorType.Hyperv); - break; - case LXC: hypervisorsListInUse.add(Hypervisor.HypervisorType.LXC); - break; - } - } - } catch (Exception e) { - s_logger.error("updateSystemVmTemplates:Exception:"+e.getMessage()); - throw new CloudRuntimeException("updateSystemVmTemplates:Exception:"+e.getMessage(), e); - } - - Map NewTemplateNameList = new HashMap(){ - { put(Hypervisor.HypervisorType.XenServer, "systemvm-xenserver-4.3"); - put(Hypervisor.HypervisorType.VMware, "systemvm-vmware-4.3"); - put(Hypervisor.HypervisorType.KVM, "systemvm-kvm-4.3"); - put(Hypervisor.HypervisorType.LXC, "systemvm-lxc-4.3"); - put(Hypervisor.HypervisorType.Hyperv, "systemvm-hyperv-4.3"); - } - }; - - Map routerTemplateConfigurationNames = new HashMap(){ - { put(Hypervisor.HypervisorType.XenServer, "router.template.xen"); - put(Hypervisor.HypervisorType.VMware, "router.template.vmware"); - put(Hypervisor.HypervisorType.KVM, "router.template.kvm"); - put(Hypervisor.HypervisorType.LXC, "router.template.lxc"); - put(Hypervisor.HypervisorType.Hyperv, "router.template.hyperv"); - } - }; - - Map newTemplateUrl = new HashMap(){ - { put(Hypervisor.HypervisorType.XenServer, "http://download.cloud.com/templates/4.3/systemvm64template-2014-01-14-master-xen.vhd.bz2"); - put(Hypervisor.HypervisorType.VMware, "http://download.cloud.com/templates/4.3/systemvm64template-2014-01-14-master-vmware.ova"); - put(Hypervisor.HypervisorType.KVM, "http://download.cloud.com/templates/4.3/systemvm64template-2014-01-14-master-kvm.qcow2.bz2"); - put(Hypervisor.HypervisorType.LXC, "http://download.cloud.com/templates/4.3/systemvm64template-2014-01-14-master-kvm.qcow2.bz2"); - put(Hypervisor.HypervisorType.Hyperv, "http://download.cloud.com/templates/4.3/systemvm64template-2013-12-23-hyperv.vhd.bz2"); - } - }; - - Map newTemplateChecksum = new HashMap(){ - { put(Hypervisor.HypervisorType.XenServer, "74b92f031cc5c2089ee89efb81344dcf"); - put(Hypervisor.HypervisorType.VMware, "ef593a061f3b7594ab0bfd9b0ed0a0d4"); - put(Hypervisor.HypervisorType.KVM, "85a1bed07bf43cbf022451cb2ecae4ff"); - put(Hypervisor.HypervisorType.LXC, "85a1bed07bf43cbf022451cb2ecae4ff"); - put(Hypervisor.HypervisorType.Hyperv, "5df45ee6ebe1b703a8805f4e1f4d0818"); - } - }; - - for (Map.Entry hypervisorAndTemplateName : NewTemplateNameList.entrySet()){ - s_logger.debug("Updating " + hypervisorAndTemplateName.getKey() + " System Vms"); - try (PreparedStatement pstmt = conn.prepareStatement("select id from `cloud`.`vm_template` where name = ? and removed is null order by id desc limit 1");) - { - //Get 4.3.0 system Vm template Id for corresponding hypervisor - long templateId = -1; - pstmt.setString(1, hypervisorAndTemplateName.getValue()); - try(ResultSet rs = pstmt.executeQuery();) - { - if(rs.next()) { - templateId = rs.getLong(1); - } - }catch (Exception e) - { - s_logger.error("updateSystemVmTemplates:Exception:"+e.getMessage()); - throw new CloudRuntimeException("updateSystemVmTemplates:Exception:"+e.getMessage(), e); - } -// // Mark the old system templates as removed -// pstmt = conn.prepareStatement("UPDATE `cloud`.`vm_template` SET removed = now() WHERE hypervisor_type = ? AND type = 'SYSTEM' AND removed is null"); -// pstmt.setString(1, hypervisorAndTemplateName.getKey().toString()); -// pstmt.executeUpdate(); -// pstmt.close(); - // change template type to SYSTEM - if (templateId != -1) - { - try(PreparedStatement templ_type_pstmt = conn.prepareStatement("update `cloud`.`vm_template` set type='SYSTEM' where id = ?");) - { - templ_type_pstmt.setLong(1, templateId); - templ_type_pstmt.executeUpdate(); - } - catch (Exception e) - { - s_logger.error("updateSystemVmTemplates:Exception:"+e.getMessage()); - throw new CloudRuntimeException("updateSystemVmTemplates:Exception:"+e.getMessage(), e); - } - // update templete ID of system Vms - try(PreparedStatement update_templ_id_pstmt = conn.prepareStatement("update `cloud`.`vm_instance` set vm_template_id = ? where type <> 'User' and hypervisor_type = ?");) - { - update_templ_id_pstmt.setLong(1, templateId); - update_templ_id_pstmt.setString(2, hypervisorAndTemplateName.getKey().toString()); - update_templ_id_pstmt.executeUpdate(); - }catch (Exception e) - { - s_logger.error("updateSystemVmTemplates:Exception:"+e.getMessage()); - throw new CloudRuntimeException("updateSystemVmTemplates:Exception:"+e.getMessage(), e); - } - - // Change value of global configuration parameter router.template.* for the corresponding hypervisor - try(PreparedStatement update_pstmt = conn.prepareStatement("UPDATE `cloud`.`configuration` SET value = ? WHERE name = ?");) { - update_pstmt.setString(1, hypervisorAndTemplateName.getValue()); - update_pstmt.setString(2, routerTemplateConfigurationNames.get(hypervisorAndTemplateName.getKey())); - update_pstmt.executeUpdate(); - }catch (Exception e) - { - s_logger.error("updateSystemVmTemplates:Exception:"+e.getMessage()); - throw new CloudRuntimeException("updateSystemVmTemplates:Exception:"+e.getMessage(), e); - } - - } else { - if (hypervisorsListInUse.contains(hypervisorAndTemplateName.getKey())){ - throw new CloudRuntimeException("4.3.0 " + hypervisorAndTemplateName.getKey() + " SystemVm template not found. Cannot upgrade system Vms"); - } else { - s_logger.warn("4.3.0 " + hypervisorAndTemplateName.getKey() + " SystemVm template not found. " + hypervisorAndTemplateName.getKey() + " hypervisor is not used, so not failing upgrade"); - // Update the latest template URLs for corresponding hypervisor - try(PreparedStatement update_templ_url_pstmt = conn.prepareStatement("UPDATE `cloud`.`vm_template` SET url = ? , checksum = ? WHERE hypervisor_type = ? AND type = 'SYSTEM' AND removed is null order by id desc limit 1");) { - update_templ_url_pstmt.setString(1, newTemplateUrl.get(hypervisorAndTemplateName.getKey())); - update_templ_url_pstmt.setString(2, newTemplateChecksum.get(hypervisorAndTemplateName.getKey())); - update_templ_url_pstmt.setString(3, hypervisorAndTemplateName.getKey().toString()); - update_templ_url_pstmt.executeUpdate(); - }catch (Exception e) - { - s_logger.error("updateSystemVmTemplates:Exception:"+e.getMessage()); - throw new CloudRuntimeException("updateSystemVmTemplates:Exception:"+e.getMessage(), e); - } - } - } - } catch (SQLException e) { - s_logger.error("updateSystemVmTemplates:Exception:"+e.getMessage()); - throw new CloudRuntimeException("Error while updating "+ hypervisorAndTemplateName.getKey() +" systemVm template", e); - } - } - s_logger.debug("Updating System Vm Template IDs Complete"); - } - catch (Exception e) { - s_logger.error("updateSystemVmTemplates:Exception:"+e.getMessage()); - throw new CloudRuntimeException("updateSystemVmTemplates:Exception:"+e.getMessage(), e); - } - } - private void encryptImageStoreDetails(Connection conn) { s_logger.debug("Encrypting image store details"); try (PreparedStatement sel_image_store_det_pstmt = conn.prepareStatement("select id, value from `cloud`.`image_store_details` where name = 'key' or name = 'secretkey'");