Ravi Nori has uploaded a new change for review. Change subject: engine : Suspend VM fails with a NullPointerException ......................................................................
engine : Suspend VM fails with a NullPointerException Suspending a VM when Async Tasks with no entityInfo set n parameters are being executed throws a NPE Change-Id: I75a807af67c8f6683f2023fe37f7847ef0aa2eb5 Bug-Url: https://bugzilla.redhat.com/1160876 Signed-off-by: Ravi Nori <rn...@redhat.com> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskManager.java 2 files changed, 10 insertions(+), 2 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/03/34903/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java index 1060f19..7214b01 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java @@ -135,7 +135,8 @@ for (String memoryState : memoryStates) { VdcReturnValueBase retVal = runInternalAction( VdcActionType.RemoveMemoryVolumes, - new RemoveMemoryVolumesParameters(memoryState, getVmId()), cloneContextAndDetachFromParent()); + buildRemoveMemoryVolumesParameters(memoryState, getVmId()), + cloneContextAndDetachFromParent()); if (!retVal.getSucceeded()) { log.error("Failed to remove memory volumes while removing vm '{}' (volumes: '{}')", @@ -144,6 +145,12 @@ } } + private RemoveMemoryVolumesParameters buildRemoveMemoryVolumesParameters(String memoryState, Guid vmId) { + RemoveMemoryVolumesParameters params = new RemoveMemoryVolumesParameters(memoryState, vmId); + params.setEntityInfo(getParameters().getEntityInfo()); + return params; + } + @Override protected boolean canDoAction() { if (getVm() == null) { diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskManager.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskManager.java index e8d7620..3d84f6f 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskManager.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskManager.java @@ -378,7 +378,8 @@ } private boolean isCurrentTaskLookedFor(Guid id, SPMTask task) { - return (task instanceof CommandAsyncTask) && id.equals(task.getParameters().getEntityInfo().getId()) + return (task instanceof CommandAsyncTask) && task.getParameters().getEntityInfo() != null && + id.equals(task.getParameters().getEntityInfo().getId()) && (task.getState() != AsyncTaskState.Cleared) && (task.getState() != AsyncTaskState.ClearFailed); } -- To view, visit http://gerrit.ovirt.org/34903 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I75a807af67c8f6683f2023fe37f7847ef0aa2eb5 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Ravi Nori <rn...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches