From 34e8483e802d5467f6d5f52e8116ee26fe100f6f Mon Sep 17 00:00:00 2001 From: Loic Lambiel Date: Mon, 1 Sep 2014 10:31:57 +0200 Subject: [PATCH] CLOUDSTACK-7404: Failed to start an instance when originating template has been deleted Signed-off-by: Sebastien Goasguen (cherry picked from commit c1bf7eeeeeb3bd4dad384225d411e21859cce470) --- .../src/com/cloud/vm/VirtualMachineProfileImpl.java | 2 +- .../src/com/cloud/vm/VirtualMachineManagerImpl.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/engine/components-api/src/com/cloud/vm/VirtualMachineProfileImpl.java b/engine/components-api/src/com/cloud/vm/VirtualMachineProfileImpl.java index a1e2528d4cc..4284a218afc 100644 --- a/engine/components-api/src/com/cloud/vm/VirtualMachineProfileImpl.java +++ b/engine/components-api/src/com/cloud/vm/VirtualMachineProfileImpl.java @@ -103,7 +103,7 @@ public class VirtualMachineProfileImpl implements VirtualMachineProfile { @Override public VirtualMachineTemplate getTemplate() { if (_template == null && _vm != null) { - _template = s_entityMgr.findById(VirtualMachineTemplate.class, _vm.getTemplateId()); + _template = s_entityMgr.findByIdIncludingRemoved(VirtualMachineTemplate.class, _vm.getTemplateId()); } return _template; } diff --git a/engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java b/engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java index be88b4e7e25..95026d6b208 100644 --- a/engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java +++ b/engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java @@ -832,7 +832,7 @@ public class VirtualMachineManagerImpl extends ManagerBase implements VirtualMac VMInstanceVO startedVm = null; ServiceOfferingVO offering = _offeringDao.findById(vm.getId(), vm.getServiceOfferingId()); - VirtualMachineTemplate template = _entityMgr.findById(VirtualMachineTemplate.class, vm.getTemplateId()); + VirtualMachineTemplate template = _entityMgr.findByIdIncludingRemoved(VirtualMachineTemplate.class, vm.getTemplateId()); if (s_logger.isDebugEnabled()) { s_logger.debug("Trying to deploy VM, vm has dcId: " + vm.getDataCenterId() + " and podId: " + vm.getPodIdToDeployIn());