diff --git a/engine/storage/src/org/apache/cloudstack/storage/helper/VMSnapshotHelperImpl.java b/engine/storage/src/org/apache/cloudstack/storage/helper/VMSnapshotHelperImpl.java index a1bcd45d3a2..cadbad3341a 100644 --- a/engine/storage/src/org/apache/cloudstack/storage/helper/VMSnapshotHelperImpl.java +++ b/engine/storage/src/org/apache/cloudstack/storage/helper/VMSnapshotHelperImpl.java @@ -82,7 +82,7 @@ public class VMSnapshotHelperImpl implements VMSnapshotHelper { // check if lastHostId is available if (vm.getLastHostId() != null) { - HostVO lastHost = hostDao.findById(vm.getLastHostId()); + HostVO lastHost = hostDao.findByIdIncludingRemoved(vm.getLastHostId()); if (lastHost.getStatus() == com.cloud.host.Status.Up && !lastHost.isInMaintenanceStates()) return lastHost.getId(); } diff --git a/server/src/com/cloud/vm/snapshot/VMSnapshotManagerImpl.java b/server/src/com/cloud/vm/snapshot/VMSnapshotManagerImpl.java index 5ead59aadc1..b49db9b51c1 100644 --- a/server/src/com/cloud/vm/snapshot/VMSnapshotManagerImpl.java +++ b/server/src/com/cloud/vm/snapshot/VMSnapshotManagerImpl.java @@ -760,6 +760,8 @@ public class VMSnapshotManagerImpl extends ManagerBase implements VMSnapshotMana if (jobResult != null) { if (jobResult instanceof ConcurrentOperationException) throw (ConcurrentOperationException)jobResult; + else if (jobResult instanceof InvalidParameterValueException) + throw (InvalidParameterValueException)jobResult; else if (jobResult instanceof Throwable) throw new RuntimeException("Unexpected exception", (Throwable)jobResult); }