You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by mu...@apache.org on 2013/02/08 14:23:16 UTC
[3/3] git commit: refs/heads/4.1 - CLOUDSTACK-1208: Failed to
shutdown guest network
Updated Branches:
refs/heads/4.1 5d1769335 -> 69d24545c
refs/heads/gslb 8f70ee08e -> 44e3e5ebe
CLOUDSTACK-1208: Failed to shutdown guest network
Firewall manager was being used instead of LoadBalancingRules manager
while applying the load balancer rules in shut down network. Changing it
to LoadBalancingRules manager.
Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/69d24545
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/69d24545
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/69d24545
Branch: refs/heads/4.1
Commit: 69d24545c4f0e316dba534b6d5d99308795db6d4
Parents: 5d17693
Author: Murali Reddy <mu...@citrix.com>
Authored: Fri Feb 8 18:50:18 2013 +0530
Committer: Murali Reddy <mu...@citrix.com>
Committed: Fri Feb 8 18:50:18 2013 +0530
----------------------------------------------------------------------
.../src/com/cloud/network/NetworkManagerImpl.java | 4 ++--
.../network/lb/LoadBalancingRulesManager.java | 10 ++++++----
2 files changed, 8 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/69d24545/server/src/com/cloud/network/NetworkManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java
index f24623e..8632342 100755
--- a/server/src/com/cloud/network/NetworkManagerImpl.java
+++ b/server/src/com/cloud/network/NetworkManagerImpl.java
@@ -2991,6 +2991,7 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L
private boolean shutdownNetworkResources(long networkId, Account caller, long callerUserId) {
// This method cleans up network rules on the backend w/o touching them in the DB
boolean success = true;
+ Network network = _networksDao.findById(networkId);
// Mark all PF rules as revoked and apply them on the backend (not in the DB)
List<PortForwardingRuleVO> pfRules = _portForwardingRulesDao.listByNetwork(networkId);
@@ -3063,7 +3064,7 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L
}
try {
- if (!_firewallMgr.applyRules(lbRules, true, false)) {
+ if (!_lbMgr.applyRules(network, Purpose.LoadBalancing, lbs)) {
s_logger.warn("Failed to cleanup lb rules as a part of shutdownNetworkRules");
success = false;
}
@@ -3142,7 +3143,6 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L
}
// Get all ip addresses, mark as releasing and release them on the backend
- Network network = _networksDao.findById(networkId);
List<IPAddressVO> userIps = _ipAddressDao.listByAssociatedNetwork(networkId, null);
List<PublicIp> publicIpsToRelease = new ArrayList<PublicIp>();
if (userIps != null && !userIps.isEmpty()) {
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/69d24545/server/src/com/cloud/network/lb/LoadBalancingRulesManager.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/lb/LoadBalancingRulesManager.java b/server/src/com/cloud/network/lb/LoadBalancingRulesManager.java
index c9b3f93..9d7d22f 100644
--- a/server/src/com/cloud/network/lb/LoadBalancingRulesManager.java
+++ b/server/src/com/cloud/network/lb/LoadBalancingRulesManager.java
@@ -16,16 +16,18 @@
// under the License.
package com.cloud.network.lb;
-import java.util.List;
-
-import org.apache.cloudstack.api.command.user.loadbalancer.CreateLoadBalancerRuleCmd;
import com.cloud.exception.NetworkRuleConflictException;
import com.cloud.exception.ResourceUnavailableException;
+import com.cloud.network.Network;
import com.cloud.network.lb.LoadBalancingRule.LbDestination;
import com.cloud.network.lb.LoadBalancingRule.LbStickinessPolicy;
+import com.cloud.network.rules.FirewallRule;
import com.cloud.network.rules.LbStickinessMethod;
import com.cloud.network.rules.LoadBalancer;
import com.cloud.user.Account;
+import org.apache.cloudstack.api.command.user.loadbalancer.CreateLoadBalancerRuleCmd;
+
+import java.util.List;
public interface LoadBalancingRulesManager extends LoadBalancingRulesService {
@@ -43,7 +45,7 @@ public interface LoadBalancingRulesManager extends LoadBalancingRulesService {
* @return true if removal is successful
*/
boolean removeVmFromLoadBalancers(long vmId);
-
+ boolean applyRules(Network network, FirewallRule.Purpose purpose, List<? extends FirewallRule> rules) throws ResourceUnavailableException ;
boolean applyLoadBalancersForNetwork(long networkId) throws ResourceUnavailableException;
String getLBCapability(long networkid, String capabilityName);
boolean configureLbAutoScaleVmGroup(long vmGroupid, String currentState) throws ResourceUnavailableException;