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/02/01 21:39:50 UTC

git commit: updated refs/heads/master to ce4b718

Updated Branches:
  refs/heads/master 7d0472bda -> ce4b718f4


CLOUDSTACK-5062: Deleting Load Balancing Rule fails when generating usage events are enabled

Signed-off-by: Daan Hoogland <da...@onecht.net>
(cherry picked from commit fc796632ed984f37fdf32e6aedf26d179a70b22f)
Signed-off-by: Daan Hoogland <da...@onecht.net>


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

Branch: refs/heads/master
Commit: ce4b718f4a7201d575103dedf17a8bd063fe6a52
Parents: 7d0472b
Author: David Grizzanti <dg...@gmail.com>
Authored: Wed Nov 6 12:57:46 2013 -0500
Committer: Daan Hoogland <da...@onecht.net>
Committed: Sat Feb 1 21:08:24 2014 +0100

----------------------------------------------------------------------
 .../cloud/network/lb/LoadBalancingRulesManagerImpl.java   | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ce4b718f/server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java b/server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
index 67346e1..cdd3435 100755
--- a/server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
+++ b/server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
@@ -1348,8 +1348,9 @@ public class LoadBalancingRulesManagerImpl<Type> extends ManagerBase implements
 
                 if (generateUsageEvent) {
                     // Generate usage event right after all rules were marked for revoke
-                    UsageEventUtils.publishUsageEvent(EventTypes.EVENT_LOAD_BALANCER_DELETE, lb.getAccountId(), 0, lb.getId(), null, LoadBalancingRule.class.getName(),
-                        lb.getUuid());
+                    Network network = _networkModel.getNetwork(lb.getNetworkId());
+                    UsageEventUtils.publishUsageEvent(EventTypes.EVENT_LOAD_BALANCER_DELETE, lb.getAccountId(), network.getDataCenterId(), lb.getId(),
+                            null, LoadBalancingRule.class.getName(), lb.getUuid());
                 }
 
                 return backupMaps;
@@ -1970,6 +1971,11 @@ public class LoadBalancingRulesManagerImpl<Type> extends ManagerBase implements
         List<String> serviceStates = new ArrayList<String>();
         List<LoadBalancerVMMapVO> vmLoadBalancerMappings = null;
         vmLoadBalancerMappings = _lb2VmMapDao.listByLoadBalancerId(loadBalancerId);
+        if(vmLoadBalancerMappings == null) {
+            String msg = "no VM Loadbalancer Mapping found";
+            s_logger.error(msg);
+            throw new CloudRuntimeException(msg);
+        }
         Map<Long, String> vmServiceState = new HashMap<Long, String>(vmLoadBalancerMappings.size());
         List<Long> appliedInstanceIdList = new ArrayList<Long>();