Arik Hadas has uploaded a new change for review. Change subject: core: rerun HA VMs on manual fence using AutoStartVmsRunner ......................................................................
core: rerun HA VMs on manual fence using AutoStartVmsRunner Same as 1269b60ae6ab8caf42bc2fb5ff06c0403b0b7562 but for manual fence. Change-Id: Ia40853abb8b985da93ab1c43146ec5d227c8cf88 Bug-Url: https://bugzilla.redhat.com/1080961 Signed-off-by: Arik Hadas <aha...@redhat.com> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ClearNonResponsiveVdsVmsCommand.java 1 file changed, 7 insertions(+), 9 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/37/26137/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ClearNonResponsiveVdsVmsCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ClearNonResponsiveVdsVmsCommand.java index d60dfa2..2b0ab47 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ClearNonResponsiveVdsVmsCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ClearNonResponsiveVdsVmsCommand.java @@ -1,17 +1,16 @@ package org.ovirt.engine.core.bll; +import java.util.ArrayList; import java.util.Collections; import java.util.List; import org.ovirt.engine.core.bll.job.ExecutionHandler; import org.ovirt.engine.core.common.AuditLogType; -import org.ovirt.engine.core.common.action.RunVmParams; -import org.ovirt.engine.core.common.action.VdcActionParametersBase; -import org.ovirt.engine.core.common.action.VdcActionType; import org.ovirt.engine.core.common.action.VdsActionParameters; import org.ovirt.engine.core.common.businessentities.VDSStatus; import org.ovirt.engine.core.common.businessentities.VM; import org.ovirt.engine.core.common.businessentities.VMStatus; +import org.ovirt.engine.core.common.businessentities.VmExitStatus; import org.ovirt.engine.core.common.businessentities.comparators.VmsComparer; import org.ovirt.engine.core.common.errors.VdcBllMessages; import org.ovirt.engine.core.common.vdscommands.SetVmStatusVDSCommandParameters; @@ -45,17 +44,16 @@ protected void executeCommand() { List<VM> vms = DbFacade.getInstance().getVmDao().getAllRunningForVds(getVdsId()); Collections.sort(vms, Collections.reverseOrder(new VmsComparer())); - java.util.ArrayList<VdcActionParametersBase> runVmParamsList = - new java.util.ArrayList<VdcActionParametersBase>(); + List<Guid> autoStartVmIdsToRerun = new ArrayList<>(); for (VM vm : vms) { if (vm.isAutoStartup()) { - runVmParamsList.add(new RunVmParams(vm.getId())); + autoStartVmIdsToRerun.add(vm.getId()); } VDSReturnValue returnValue = Backend .getInstance() .getResourceManager() .RunVdsCommand(VDSCommandType.SetVmStatus, - new SetVmStatusVDSCommandParameters(vm.getId(), VMStatus.Down)); + new SetVmStatusVDSCommandParameters(vm.getId(), VMStatus.Down, VmExitStatus.Error)); // Write that this VM was shut down by host reboot or manual fence if (returnValue != null && returnValue.getSucceeded()) { LogSettingVmToDown(getVds().getId(), vm.getId()); @@ -69,8 +67,8 @@ .getResourceManager() .RunVdsCommand(VDSCommandType.UpdateVdsVMsCleared, new UpdateVdsVMsClearedVDSCommandParameters(getVdsId())); - if (runVmParamsList.size() > 0) { - Backend.getInstance().runInternalMultipleActions(VdcActionType.RunVm, runVmParamsList); + if (!autoStartVmIdsToRerun.isEmpty()) { + AutoStartVmsRunner.getInstance().addVmsToRun(autoStartVmIdsToRerun); } setSucceeded(true); } -- To view, visit http://gerrit.ovirt.org/26137 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ia40853abb8b985da93ab1c43146ec5d227c8cf88 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: ovirt-engine-3.4 Gerrit-Owner: Arik Hadas <aha...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches