Michael Kublin has uploaded a new change for review. Change subject: engine: Preporation for removing a global lock on spm calls at engine side ......................................................................
engine: Preporation for removing a global lock on spm calls at engine side The following patch is preporation for removing a global lock on spm operation at engine side. In order to do these as a first stage I am removing or reduce an usage of methods which can require additional synchronization. Thes patch is removing some usage of getCurrentVdsId() and removed unused commands Change-Id: I3044261122112b5557953c92dd80782d4edc444e Signed-off-by: Michael Kublin <mkub...@redhat.com> --- M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java D backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/CurrentVdsIdVDSCommand.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/GetFloppyListVDSCommand.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/GetIsoListVDSCommand.java D backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IsMonitorValidVDSCommand.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMClearTaskVDSCommand.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetAllTasksInfoVDSCommand.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetAllTasksStatusesVDSCommand.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetTaskInfoVDSCommand.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMRevertTaskVDSCommand.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMStopTaskVDSCommand.java 11 files changed, 46 insertions(+), 114 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/24/9024/1 diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java index 2dc2930..088bfbe 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java @@ -71,7 +71,6 @@ CreateSnapshot("org.ovirt.engine.core.vdsbroker.irsbroker"), MergeSnapshots("org.ovirt.engine.core.vdsbroker.irsbroker"), SetImageDescription("org.ovirt.engine.core.vdsbroker.irsbroker"), - IsMonitorValid("org.ovirt.engine.core.vdsbroker.irsbroker"), IsValid("org.ovirt.engine.core.vdsbroker.irsbroker"), IsoPrefix("org.ovirt.engine.core.vdsbroker.irsbroker"), IsoDirectory("org.ovirt.engine.core.vdsbroker.irsbroker"), @@ -79,7 +78,6 @@ GetIsoList("org.ovirt.engine.core.vdsbroker.irsbroker"), HsmGetIsoList("org.ovirt.engine.core.vdsbroker.vdsbroker"), GetFloppyList("org.ovirt.engine.core.vdsbroker.irsbroker"), - CurrentVdsId("org.ovirt.engine.core.vdsbroker.irsbroker"), ExportCandidate("org.ovirt.engine.core.vdsbroker.irsbroker"), CreateStorageDomain("org.ovirt.engine.core.vdsbroker.vdsbroker"), ValidateStorageDomain("org.ovirt.engine.core.vdsbroker.vdsbroker"), diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/CurrentVdsIdVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/CurrentVdsIdVDSCommand.java deleted file mode 100644 index 8950b05..0000000 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/CurrentVdsIdVDSCommand.java +++ /dev/null @@ -1,14 +0,0 @@ -package org.ovirt.engine.core.vdsbroker.irsbroker; - -import org.ovirt.engine.core.common.vdscommands.*; - -public class CurrentVdsIdVDSCommand<P extends IrsBaseVDSCommandParameters> extends IrsBrokerCommand<P> { - public CurrentVdsIdVDSCommand(P parameters) { - super(parameters); - } - - @Override - protected void ExecuteIrsBrokerCommand() { - getVDSReturnValue().setReturnValue(getCurrentIrsProxyData().getCurrentVdsId()); - } -} diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/GetFloppyListVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/GetFloppyListVDSCommand.java index 67efe8a..eacd201 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/GetFloppyListVDSCommand.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/GetFloppyListVDSCommand.java @@ -12,14 +12,10 @@ @Override protected void ExecuteIrsBrokerCommand() { - if (getCurrentIrsProxyData().getIsValid()) { - _isoList = getIrsProxy().getFloppyList(getParameters().getStoragePoolId().toString()); - ProceedProxyReturnValue(); - if (_isoList.mVMList != null && _isoList.mVMList.length > 0) { - setReturnValue(new java.util.ArrayList<String>(java.util.Arrays.asList(_isoList.mVMList))); - } else { - setReturnValue(new java.util.ArrayList<String>()); - } + _isoList = getIrsProxy().getFloppyList(getParameters().getStoragePoolId().toString()); + ProceedProxyReturnValue(); + if (_isoList.mVMList != null && _isoList.mVMList.length > 0) { + setReturnValue(new java.util.ArrayList<String>(java.util.Arrays.asList(_isoList.mVMList))); } else { setReturnValue(new java.util.ArrayList<String>()); } diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/GetIsoListVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/GetIsoListVDSCommand.java index cbd1349..1fdd62f 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/GetIsoListVDSCommand.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/GetIsoListVDSCommand.java @@ -10,17 +10,12 @@ @Override protected void ExecuteIrsBrokerCommand() { - if (getCurrentIrsProxyData().getIsValid()) { - setReturnValue(ResourceManager - .getInstance() - .runVdsCommand( - VDSCommandType.HsmGetIsoList, - new HSMGetIsoListParameters(getCurrentIrsProxyData().getCurrentVdsId(), - getParameters().getStoragePoolId())) - .getReturnValue()); - } else { - setReturnValue(new java.util.ArrayList<String>()); - getVDSReturnValue().setSucceeded(false); - } + setReturnValue(ResourceManager + .getInstance() + .runVdsCommand( + VDSCommandType.HsmGetIsoList, + new HSMGetIsoListParameters(getCurrentIrsProxyData().getCurrentVdsId(), + getParameters().getStoragePoolId())) + .getReturnValue()); } } diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IsMonitorValidVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IsMonitorValidVDSCommand.java deleted file mode 100644 index cc562b2..0000000 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IsMonitorValidVDSCommand.java +++ /dev/null @@ -1,14 +0,0 @@ -package org.ovirt.engine.core.vdsbroker.irsbroker; - -import org.ovirt.engine.core.common.vdscommands.*; - -public class IsMonitorValidVDSCommand<P extends IrsBaseVDSCommandParameters> extends IrsBrokerCommand<P> { - public IsMonitorValidVDSCommand(P parameters) { - super(parameters); - } - - @Override - protected void ExecuteIrsBrokerCommand() { - getVDSReturnValue().setReturnValue(getCurrentIrsProxyData().getIsValid()); - } -} diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMClearTaskVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMClearTaskVDSCommand.java index b422718..54ba63c 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMClearTaskVDSCommand.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMClearTaskVDSCommand.java @@ -1,6 +1,5 @@ package org.ovirt.engine.core.vdsbroker.irsbroker; -import org.ovirt.engine.core.compat.*; import org.ovirt.engine.core.vdsbroker.*; import org.ovirt.engine.core.common.vdscommands.*; @@ -12,15 +11,13 @@ @Override protected void ExecuteIrsBrokerCommand() { - if (!getCurrentIrsProxyData().getCurrentVdsId().equals(Guid.Empty)) { - VDSReturnValue returnValue = ResourceManager.getInstance().runVdsCommand( - VDSCommandType.HSMClearTask, - new HSMTaskGuidBaseVDSCommandParameters(getCurrentIrsProxyData().getCurrentVdsId(), - getParameters().getTaskId())); - if (returnValue != null && !returnValue.getSucceeded()) { - getVDSReturnValue().setVdsError(returnValue.getVdsError()); - getVDSReturnValue().setSucceeded(false); - } + VDSReturnValue returnValue = ResourceManager.getInstance().runVdsCommand( + VDSCommandType.HSMClearTask, + new HSMTaskGuidBaseVDSCommandParameters(getCurrentIrsProxyData().getCurrentVdsId(), + getParameters().getTaskId())); + if (returnValue != null && !returnValue.getSucceeded()) { + getVDSReturnValue().setVdsError(returnValue.getVdsError()); + getVDSReturnValue().setSucceeded(false); } } } diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetAllTasksInfoVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetAllTasksInfoVDSCommand.java index 5c90708..6acd53b 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetAllTasksInfoVDSCommand.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetAllTasksInfoVDSCommand.java @@ -1,10 +1,8 @@ package org.ovirt.engine.core.vdsbroker.irsbroker; -import org.ovirt.engine.core.common.asynctasks.AsyncTaskCreationInfo; import org.ovirt.engine.core.common.vdscommands.IrsBaseVDSCommandParameters; import org.ovirt.engine.core.common.vdscommands.VDSCommandType; import org.ovirt.engine.core.common.vdscommands.VdsIdVDSCommandParametersBase; -import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.utils.log.Log; import org.ovirt.engine.core.utils.log.LogFactory; import org.ovirt.engine.core.vdsbroker.ResourceManager; @@ -16,21 +14,15 @@ @Override protected void ExecuteIrsBrokerCommand() { - if (getCurrentIrsProxyData().getCurrentVdsId().equals(Guid.Empty)) { - setReturnValue(new java.util.ArrayList<AsyncTaskCreationInfo>()); - } + log.infoFormat( + "-- SPMGetAllTasksInfoVDSCommand::ExecuteIrsBrokerCommand: Attempting on storage pool '{0}'", + getParameters().getStoragePoolId()); - else { - log.infoFormat( - "-- SPMGetAllTasksInfoVDSCommand::ExecuteIrsBrokerCommand: Attempting on storage pool '{0}'", - getParameters().getStoragePoolId()); - - setReturnValue(ResourceManager - .getInstance() - .runVdsCommand(VDSCommandType.HSMGetAllTasksInfo, - new VdsIdVDSCommandParametersBase(getCurrentIrsProxyData().getCurrentVdsId())) - .getReturnValue()); - } + setReturnValue(ResourceManager + .getInstance() + .runVdsCommand(VDSCommandType.HSMGetAllTasksInfo, + new VdsIdVDSCommandParametersBase(getCurrentIrsProxyData().getCurrentVdsId())) + .getReturnValue()); } private static Log log = LogFactory.getLog(SPMGetAllTasksInfoVDSCommand.class); diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetAllTasksStatusesVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetAllTasksStatusesVDSCommand.java index 11e6e15..8430395 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetAllTasksStatusesVDSCommand.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetAllTasksStatusesVDSCommand.java @@ -3,7 +3,6 @@ import org.ovirt.engine.core.common.vdscommands.IrsBaseVDSCommandParameters; import org.ovirt.engine.core.common.vdscommands.VDSCommandType; import org.ovirt.engine.core.common.vdscommands.VdsIdVDSCommandParametersBase; -import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.utils.log.Logged; import org.ovirt.engine.core.utils.log.Logged.LogLevel; import org.ovirt.engine.core.vdsbroker.ResourceManager; @@ -16,11 +15,7 @@ @Override protected void ExecuteIrsBrokerCommand() { - if (getCurrentIrsProxyData().getCurrentVdsId().equals(Guid.Empty)) { - setReturnValue(null); - } else { - setVDSReturnValue(ResourceManager.getInstance().runVdsCommand(VDSCommandType.HSMGetAllTasksStatuses, - new VdsIdVDSCommandParametersBase(getCurrentIrsProxyData().getCurrentVdsId()))); - } + setVDSReturnValue(ResourceManager.getInstance().runVdsCommand(VDSCommandType.HSMGetAllTasksStatuses, + new VdsIdVDSCommandParametersBase(getCurrentIrsProxyData().getCurrentVdsId()))); } } diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetTaskInfoVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetTaskInfoVDSCommand.java index 9ba1d7b..fa24afe 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetTaskInfoVDSCommand.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMGetTaskInfoVDSCommand.java @@ -1,8 +1,6 @@ package org.ovirt.engine.core.vdsbroker.irsbroker; -import org.ovirt.engine.core.compat.*; import org.ovirt.engine.core.vdsbroker.*; -import org.ovirt.engine.core.common.asynctasks.*; import org.ovirt.engine.core.common.vdscommands.*; public class SPMGetTaskInfoVDSCommand<P extends SPMTaskGuidBaseVDSCommandParameters> @@ -13,15 +11,11 @@ @Override protected void ExecuteIrsBrokerCommand() { - if (getCurrentIrsProxyData().getCurrentVdsId().equals(Guid.Empty)) { - setReturnValue(new AsyncTaskCreationInfo()); - } else { - setReturnValue(ResourceManager - .getInstance() - .runVdsCommand( - VDSCommandType.HSMGetTaskInfo, - new HSMTaskGuidBaseVDSCommandParameters(getCurrentIrsProxyData().getCurrentVdsId(), - getParameters().getTaskId())).getReturnValue()); - } + setReturnValue(ResourceManager + .getInstance() + .runVdsCommand( + VDSCommandType.HSMGetTaskInfo, + new HSMTaskGuidBaseVDSCommandParameters(getCurrentIrsProxyData().getCurrentVdsId(), + getParameters().getTaskId())).getReturnValue()); } } diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMRevertTaskVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMRevertTaskVDSCommand.java index 66f4dcd..33f962a 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMRevertTaskVDSCommand.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMRevertTaskVDSCommand.java @@ -1,6 +1,5 @@ package org.ovirt.engine.core.vdsbroker.irsbroker; -import org.ovirt.engine.core.compat.*; import org.ovirt.engine.core.vdsbroker.*; import org.ovirt.engine.core.common.vdscommands.*; @@ -11,17 +10,14 @@ @Override protected void ExecuteIrsBrokerCommand() { - if (!getCurrentIrsProxyData().getCurrentVdsId().equals(Guid.Empty)) { - VDSReturnValue returnValue = - ResourceManager.getInstance() - .runVdsCommand( - VDSCommandType.HSMRevertTask, - new HSMTaskGuidBaseVDSCommandParameters(getCurrentIrsProxyData().getCurrentVdsId(), - getParameters().getTaskId())); - if (returnValue != null && !returnValue.getSucceeded()) { - getVDSReturnValue().setVdsError(returnValue.getVdsError()); - getVDSReturnValue().setSucceeded(false); - } + VDSReturnValue returnValue = + ResourceManager.getInstance().runVdsCommand( + VDSCommandType.HSMRevertTask, + new HSMTaskGuidBaseVDSCommandParameters(getCurrentIrsProxyData().getCurrentVdsId(), + getParameters().getTaskId())); + if (returnValue != null && !returnValue.getSucceeded()) { + getVDSReturnValue().setVdsError(returnValue.getVdsError()); + getVDSReturnValue().setSucceeded(false); } } } diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMStopTaskVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMStopTaskVDSCommand.java index 38f22b8..c573806 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMStopTaskVDSCommand.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/SPMStopTaskVDSCommand.java @@ -1,6 +1,5 @@ package org.ovirt.engine.core.vdsbroker.irsbroker; -import org.ovirt.engine.core.compat.*; import org.ovirt.engine.core.vdsbroker.*; import org.ovirt.engine.core.common.vdscommands.*; @@ -11,11 +10,9 @@ @Override protected void ExecuteIrsBrokerCommand() { - if (!getCurrentIrsProxyData().getCurrentVdsId().equals(Guid.Empty)) { - ResourceManager.getInstance().runVdsCommand( - VDSCommandType.HSMStopTask, - new HSMTaskGuidBaseVDSCommandParameters(getCurrentIrsProxyData().getCurrentVdsId(), - getParameters().getTaskId())); - } + ResourceManager.getInstance().runVdsCommand( + VDSCommandType.HSMStopTask, + new HSMTaskGuidBaseVDSCommandParameters(getCurrentIrsProxyData().getCurrentVdsId(), + getParameters().getTaskId())); } } -- To view, visit http://gerrit.ovirt.org/9024 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I3044261122112b5557953c92dd80782d4edc444e Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Michael Kublin <mkub...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches