Liron Aravot has uploaded a new change for review.

Change subject: core: DeactivateStorageDomainWithOvfUpdate - locks
......................................................................

core: DeactivateStorageDomainWithOvfUpdate - locks

The lock taken by the command should be released at the end of the
endAction() method, therfore we should avoid passing it to the child
command (so it won't be released by it). Also, avoid releasing the in
memory lock while there are still tasks.

Change-Id: Id8199e372d72f673aeb7b16d12cc8f5ffa043117
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1138124
Signed-off-by: Liron Aravot <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/DeactivateStorageDomainWithOvfUpdateCommand.java
1 file changed, 3 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/49/35949/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/DeactivateStorageDomainWithOvfUpdateCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/DeactivateStorageDomainWithOvfUpdateCommand.java
index 33c5ea8..67c7ea0 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/DeactivateStorageDomainWithOvfUpdateCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/DeactivateStorageDomainWithOvfUpdateCommand.java
@@ -128,7 +128,7 @@
                 parameters.setParentParameters(getParameters());
                 parameters.setParentCommand(getActionType());
                 parameters.setSkipDomainChecks(true);
-                VdcReturnValueBase vdsReturnValue = 
getBackend().endAction(VdcActionType.CreateOvfStoresForStorageDomain, 
parameters, getContext());
+                VdcReturnValueBase vdsReturnValue = 
getBackend().endAction(VdcActionType.CreateOvfStoresForStorageDomain, 
parameters, cloneContext().withoutLock());
                 
createdTasks.addAll(vdsReturnValue.getInternalVdsmTaskIdList());
                 break;
             }
@@ -136,6 +136,8 @@
         }
 
         if (!createdTasks.isEmpty()) {
+            // if there are created tasks, avoid release the memory lock.
+            setLock(null);
             setSucceeded(true);
             startPollingAsyncTasks(createdTasks);
             return;


-- 
To view, visit http://gerrit.ovirt.org/35949
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Id8199e372d72f673aeb7b16d12cc8f5ffa043117
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: ovirt-engine-3.5
Gerrit-Owner: Liron Aravot <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to