You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by da...@apache.org on 2014/05/27 10:38:12 UTC

git commit: updated refs/heads/4.4 to df42ce9

Repository: cloudstack
Updated Branches:
  refs/heads/4.4 1fea5d9ea -> df42ce903


Fixed CLOUDSTACK-6756: usage id is not being returned for an ip in deleted ip range


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

Branch: refs/heads/4.4
Commit: df42ce903d399cf30055e55bc24b84fbc0b563a9
Parents: 1fea5d9
Author: Rajani Karuturi <ra...@gmail.com>
Authored: Fri May 23 15:50:06 2014 +0530
Committer: Daan Hoogland <da...@onecht.net>
Committed: Tue May 27 10:37:55 2014 +0200

----------------------------------------------------------------------
 api/src/com/cloud/dc/Vlan.java                  |  6 ++++++
 api/src/com/cloud/network/IpAddress.java        |  4 ++++
 .../src/com/cloud/network/addr/PublicIp.java    | 10 ++++++++++
 engine/schema/src/com/cloud/dc/VlanVO.java      | 20 ++++++++++++++++++++
 .../src/com/cloud/network/dao/IPAddressVO.java  | 17 +++++++++++++++++
 .../configuration/ConfigurationManagerImpl.java |  2 +-
 setup/db/db/schema-430to440.sql                 |  9 +++++++++
 7 files changed, 67 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/df42ce90/api/src/com/cloud/dc/Vlan.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/dc/Vlan.java b/api/src/com/cloud/dc/Vlan.java
index ac9acda..dd12128 100644
--- a/api/src/com/cloud/dc/Vlan.java
+++ b/api/src/com/cloud/dc/Vlan.java
@@ -20,6 +20,8 @@ import org.apache.cloudstack.acl.InfrastructureEntity;
 import org.apache.cloudstack.api.Identity;
 import org.apache.cloudstack.api.InternalIdentity;
 
+import java.util.Date;
+
 public interface Vlan extends InfrastructureEntity, InternalIdentity, Identity {
     public enum VlanType {
         DirectAttached, VirtualNetwork
@@ -41,6 +43,10 @@ public interface Vlan extends InfrastructureEntity, InternalIdentity, Identity {
 
     public Long getNetworkId();
 
+    public Date getRemoved();
+
+    public Date getCreated();
+
     public Long getPhysicalNetworkId();
 
     public String getIp6Gateway();

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/df42ce90/api/src/com/cloud/network/IpAddress.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/network/IpAddress.java b/api/src/com/cloud/network/IpAddress.java
index 5aae784..fc14387 100644
--- a/api/src/com/cloud/network/IpAddress.java
+++ b/api/src/com/cloud/network/IpAddress.java
@@ -87,4 +87,8 @@ public interface IpAddress extends ControlledEntity, Identity, InternalIdentity
 
     boolean isDisplay();
 
+    public Date getRemoved();
+
+    public Date getCreated();
+
 }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/df42ce90/engine/components-api/src/com/cloud/network/addr/PublicIp.java
----------------------------------------------------------------------
diff --git a/engine/components-api/src/com/cloud/network/addr/PublicIp.java b/engine/components-api/src/com/cloud/network/addr/PublicIp.java
index a20e345..49cae4b 100644
--- a/engine/components-api/src/com/cloud/network/addr/PublicIp.java
+++ b/engine/components-api/src/com/cloud/network/addr/PublicIp.java
@@ -239,6 +239,16 @@ public class PublicIp implements PublicIpAddress {
     }
 
     @Override
+    public Date getRemoved() {
+        return _addr.getRemoved();
+    }
+
+    @Override
+    public Date getCreated() {
+        return _addr.getCreated();
+    }
+
+    @Override
     public Class<?> getEntityType() {
         return IpAddress.class;
     }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/df42ce90/engine/schema/src/com/cloud/dc/VlanVO.java
----------------------------------------------------------------------
diff --git a/engine/schema/src/com/cloud/dc/VlanVO.java b/engine/schema/src/com/cloud/dc/VlanVO.java
index ff103b9..50106e0 100644
--- a/engine/schema/src/com/cloud/dc/VlanVO.java
+++ b/engine/schema/src/com/cloud/dc/VlanVO.java
@@ -16,6 +16,9 @@
 // under the License.
 package com.cloud.dc;
 
+import com.cloud.utils.db.GenericDao;
+
+import java.util.Date;
 import java.util.UUID;
 
 import javax.persistence.Column;
@@ -73,6 +76,13 @@ public class VlanVO implements Vlan {
     @Column(name = "uuid")
     String uuid;
 
+    @Column(name= GenericDao.REMOVED_COLUMN)
+    private Date removed;
+
+    @Column(name = GenericDao.CREATED_COLUMN)
+    private Date created;
+
+
     public VlanVO(VlanType vlanType, String vlanTag, String vlanGateway, String vlanNetmask, long dataCenterId, String ipRange, Long networkId, Long physicalNetworkId,
             String ip6Gateway, String ip6Cidr, String ip6Range) {
         this.vlanType = vlanType;
@@ -151,6 +161,16 @@ public class VlanVO implements Vlan {
     }
 
     @Override
+    public Date getRemoved() {
+        return removed;
+    }
+
+    @Override
+    public Date getCreated() {
+        return created;
+    }
+
+    @Override
     public Long getPhysicalNetworkId() {
         return physicalNetworkId;
     }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/df42ce90/engine/schema/src/com/cloud/network/dao/IPAddressVO.java
----------------------------------------------------------------------
diff --git a/engine/schema/src/com/cloud/network/dao/IPAddressVO.java b/engine/schema/src/com/cloud/network/dao/IPAddressVO.java
index de2d934..816e063 100644
--- a/engine/schema/src/com/cloud/network/dao/IPAddressVO.java
+++ b/engine/schema/src/com/cloud/network/dao/IPAddressVO.java
@@ -32,6 +32,7 @@ import javax.persistence.TemporalType;
 import javax.persistence.Transient;
 
 import com.cloud.network.IpAddress;
+import com.cloud.utils.db.GenericDao;
 import com.cloud.utils.net.Ip;
 
 /**
@@ -117,6 +118,12 @@ public class IPAddressVO implements IpAddress {
     @Column(name = "display", updatable = true, nullable = false)
     protected boolean display = true;
 
+    @Column(name= GenericDao.REMOVED_COLUMN)
+    private Date removed;
+
+    @Column(name = GenericDao.CREATED_COLUMN)
+    private Date created;
+
     protected IPAddressVO() {
         uuid = UUID.randomUUID().toString();
     }
@@ -351,4 +358,14 @@ public class IPAddressVO implements IpAddress {
     public Class<?> getEntityType() {
         return IpAddress.class;
     }
+
+    @Override
+    public Date getRemoved() {
+        return removed;
+    }
+
+    @Override
+    public Date getCreated() {
+        return created;
+    }
 }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/df42ce90/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
index 3f79a76..34a3d4f 100755
--- a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
+++ b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
@@ -3171,7 +3171,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             @Override
             public void doInTransactionWithoutResult(TransactionStatus status) {
         _publicIpAddressDao.deletePublicIPRange(vlanDbId);
-        _vlanDao.expunge(vlanDbId);
+        _vlanDao.remove(vlanDbId);
             }
         });
 

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/df42ce90/setup/db/db/schema-430to440.sql
----------------------------------------------------------------------
diff --git a/setup/db/db/schema-430to440.sql b/setup/db/db/schema-430to440.sql
index 7fa93e7..85eb173 100644
--- a/setup/db/db/schema-430to440.sql
+++ b/setup/db/db/schema-430to440.sql
@@ -1695,3 +1695,12 @@ INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervis
 INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'KVM', 'default', 'FreeBSD 10', 226, now(), 0);
 INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'KVM', 'default', 'Other PV', 139, now(), 0);
 INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid,hypervisor_type, hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined) VALUES (UUID(),'KVM', 'default', 'Other PV', 140, now(), 0);
+
+alter table user_ip_address add column removed datetime DEFAULT NULL COMMENT 'date removed';
+alter table user_ip_address add column created datetime NULL COMMENT 'date created';
+
+alter table vlan add column removed datetime DEFAULT NULL COMMENT 'date removed';
+alter table vlan add column created datetime NULL COMMENT 'date created';
+
+alter table user_ip_address drop key public_ip_address;
+alter table user_ip_address add UNIQUE KEY public_ip_address (public_ip_address,source_network_id, removed);
\ No newline at end of file