From 4c697304ecfcbc3bd509a0db62f1c8804e72baf4 Mon Sep 17 00:00:00 2001 From: alena Date: Tue, 18 Jan 2011 20:01:01 -0800 Subject: [PATCH] Fixed release() method to use correct Nic state --- server/src/com/cloud/network/NetworkManagerImpl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java index 0726e1838ec..3509babd73b 100755 --- a/server/src/com/cloud/network/NetworkManagerImpl.java +++ b/server/src/com/cloud/network/NetworkManagerImpl.java @@ -1130,6 +1130,7 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag for (NicVO nic : nics) { NetworkVO network = _networksDao.findById(nic.getNetworkId()); if (nic.getState() == Nic.State.Reserved || nic.getState() == Nic.State.Reserving) { + Nic.State originalState = nic.getState(); if (nic.getReservationStrategy() == ReservationStrategy.Start) { NetworkGuru concierge = _networkGurus.get(network.getGuruName()); nic.setState(Resource.State.Releasing); @@ -1137,7 +1138,7 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag NicProfile profile = new NicProfile(nic, network, null, null); if (concierge.release(profile, vmProfile, nic.getReservationId())) { nic.setState(Resource.State.Allocated); - if (nic.getState() == Nic.State.Reserved) { + if (originalState == Nic.State.Reserved) { updateNic(nic, network.getId(), -1); } else { _nicDao.update(nic.getId(), nic);