diff --git a/server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java b/server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java index 67346e14b3b..cdd34357425 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 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 extends ManagerBase implements List serviceStates = new ArrayList(); List 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 vmServiceState = new HashMap(vmLoadBalancerMappings.size()); List appliedInstanceIdList = new ArrayList();