mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
Revert "Merge pull request #1594 from nvazquez/vmnetworkmapissue"
This reverts commit 9be93c6e9022f35a2cd3dab6a099d69a77dd72ff, reversing changes made to 8d45d711bff631efb45954631c123dcb2beffb3c.
This commit is contained in:
parent
9be93c6e90
commit
46a6530e70
@ -1428,15 +1428,6 @@ public class VirtualMachineManagerImpl extends ManagerBase implements VirtualMac
|
||||
advanceStop(vm, cleanUpEvenIfUnableToStop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Send StopCommand to stop vm.<br/>
|
||||
* <strong>Not releasing network resources until expunge command is sent</strong>
|
||||
* @param vm virtual machine
|
||||
* @param cleanUpEvenIfUnableToStop if true -> cleanup even if vm cannot be stopped. if false -> not cleaning up if vm cannot be stopped.
|
||||
* @throws AgentUnavailableException
|
||||
* @throws OperationTimedoutException
|
||||
* @throws ConcurrentOperationException
|
||||
*/
|
||||
private void advanceStop(final VMInstanceVO vm, final boolean cleanUpEvenIfUnableToStop) throws AgentUnavailableException, OperationTimedoutException,
|
||||
ConcurrentOperationException {
|
||||
final State state = vm.getState();
|
||||
@ -1585,6 +1576,13 @@ public class VirtualMachineManagerImpl extends ManagerBase implements VirtualMac
|
||||
s_logger.debug(vm + " is stopped on the host. Proceeding to release resource held.");
|
||||
}
|
||||
|
||||
try {
|
||||
_networkMgr.release(profile, cleanUpEvenIfUnableToStop);
|
||||
s_logger.debug("Successfully released network resources for the vm " + vm);
|
||||
} catch (final Exception e) {
|
||||
s_logger.warn("Unable to release some network resources.", e);
|
||||
}
|
||||
|
||||
try {
|
||||
if (vm.getHypervisorType() != HypervisorType.BareMetal) {
|
||||
volumeMgr.release(profile);
|
||||
|
||||
@ -2046,9 +2046,6 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Vir
|
||||
return false;
|
||||
}
|
||||
try {
|
||||
|
||||
releaseNetworkResourcesOnExpunge(vm.getId());
|
||||
|
||||
List<VolumeVO> rootVol = _volsDao.findByInstanceAndType(vm.getId(), Volume.Type.ROOT);
|
||||
// expunge the vm
|
||||
_itMgr.advanceExpunge(vm.getUuid());
|
||||
@ -2089,23 +2086,6 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Vir
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Release network resources, it was done on vm stop previously.
|
||||
* @param id vm id
|
||||
* @throws ConcurrentOperationException
|
||||
* @throws ResourceUnavailableException
|
||||
*/
|
||||
private void releaseNetworkResourcesOnExpunge(long id) throws ConcurrentOperationException, ResourceUnavailableException {
|
||||
final VMInstanceVO vmInstance = _vmDao.findById(id);
|
||||
if (vmInstance != null){
|
||||
final VirtualMachineProfile profile = new VirtualMachineProfileImpl(vmInstance);
|
||||
_networkMgr.release(profile, false);
|
||||
}
|
||||
else {
|
||||
s_logger.error("Couldn't find vm with id = " + id + ", unable to release network resources");
|
||||
}
|
||||
}
|
||||
|
||||
private boolean cleanupVmResources(long vmId) {
|
||||
boolean success = true;
|
||||
// Remove vm from security groups
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user