Liron Ar has uploaded a new change for review.

Change subject: core: revert when failing to export a vm
......................................................................

core: revert when failing to export a vm

When one or more tasks of exporting a vm fails, attempt to clear the
disks that were already copied.

Change-Id: Iadbb5482e4292469aee3cbac51d2531cd476ff72
Signed-off-by: Liron Aravot <lara...@redhat.com>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmTemplateCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyTemplateCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveVmCommand.java
6 files changed, 12 insertions(+), 16 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/82/15782/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmCommand.java
index d4f3054..6bf970b 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmCommand.java
@@ -21,12 +21,14 @@
 import org.ovirt.engine.core.common.VdcObjectType;
 import org.ovirt.engine.core.common.action.MoveOrCopyImageGroupParameters;
 import org.ovirt.engine.core.common.action.MoveVmParameters;
+import org.ovirt.engine.core.common.action.VdcActionParametersBase;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.action.VdcReturnValueBase;
 import org.ovirt.engine.core.common.businessentities.CopyVolumeType;
 import org.ovirt.engine.core.common.businessentities.Disk;
 import org.ovirt.engine.core.common.businessentities.Disk.DiskStorageType;
 import org.ovirt.engine.core.common.businessentities.DiskImage;
+import org.ovirt.engine.core.common.businessentities.ImageDbOperationScope;
 import org.ovirt.engine.core.common.businessentities.Snapshot;
 import org.ovirt.engine.core.common.businessentities.Snapshot.SnapshotType;
 import org.ovirt.engine.core.common.businessentities.StorageDomainType;
@@ -288,6 +290,7 @@
             tempVar.setVolumeFormat(diskForVolumeInfo.getVolumeFormat());
             tempVar.setVolumeType(diskForVolumeInfo.getVolumeType());
             tempVar.setCopyVolumeType(CopyVolumeType.LeafVol);
+            tempVar.setRevertDbOperationScope(ImageDbOperationScope.NONE);
             tempVar.setForceOverride(getParameters().getForceOverride());
             MoveOrCopyImageGroupParameters p = tempVar;
             p.setParentParameters(getParameters());
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmTemplateCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmTemplateCommand.java
index 58694eb..3fa044f 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmTemplateCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmTemplateCommand.java
@@ -64,6 +64,7 @@
                     p.setCopyVolumeType(CopyVolumeType.SharedVol);
                     p.setVolumeFormat(disk.getVolumeFormat());
                     p.setVolumeType(disk.getVolumeType());
+                    p.setRevertDbOperationScope(ImageDbOperationScope.NONE);
                     p.setForceOverride(getParameters().getForceOverride());
                     p.setRevertDbOperationScope(ImageDbOperationScope.NONE);
                     
p.setSourceDomainId(imageFromSourceDomainMap.get(disk.getId()).getStorageIds().get(0));
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
index a10e477..82253af 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
@@ -954,14 +954,6 @@
     }
 
     @Override
-    protected void endActionOnAllImageGroups() {
-        for (VdcActionParametersBase p : 
getParameters().getImagesParameters()) {
-            p.setTaskGroupSuccess(getParameters().getTaskGroupSuccess());
-            getBackend().EndAction(getImagesActionType(), p);
-        }
-    }
-
-    @Override
     protected void endWithFailure() {
         setVm(null); // Going to try and refresh the VM by re-loading
         // it form DB
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateCommand.java
index 6b4e76a..14f066c 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateCommand.java
@@ -418,14 +418,6 @@
     }
 
     @Override
-    protected void endActionOnAllImageGroups() {
-        for (VdcActionParametersBase p : 
getParameters().getImagesParameters()) {
-            p.setTaskGroupSuccess(getParameters().getTaskGroupSuccess());
-            getBackend().EndAction(getImagesActionType(), p);
-        }
-    }
-
-    @Override
     protected void endWithFailure() {
         removeNetwork();
         endActionOnAllImageGroups();
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyTemplateCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyTemplateCommand.java
index 01f2aeb..7a50c21 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyTemplateCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyTemplateCommand.java
@@ -259,6 +259,7 @@
 
     protected void endActionOnAllImageGroups() {
         for (VdcActionParametersBase p : 
getParameters().getImagesParameters()) {
+            p.setTaskGroupSuccess(getParameters().getTaskGroupSuccess());
             getBackend().EndAction(getImagesActionType(), p);
         }
     }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveVmCommand.java
index a8e00cc..6fdcfdf 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveVmCommand.java
@@ -11,6 +11,7 @@
 import org.ovirt.engine.core.bll.validator.VmValidator;
 import org.ovirt.engine.core.common.AuditLogType;
 import org.ovirt.engine.core.common.action.MoveVmParameters;
+import org.ovirt.engine.core.common.action.VdcActionParametersBase;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.businessentities.DiskImage;
 import org.ovirt.engine.core.common.businessentities.ImageOperation;
@@ -164,6 +165,12 @@
 
     }
 
+    protected void endActionOnAllImageGroups() {
+        for (VdcActionParametersBase p : 
getParameters().getImagesParameters()) {
+            getBackend().EndAction(getImagesActionType(), p);
+        }
+    }
+
     @Override
     protected void incrementDbGeneration() {
         getVmStaticDAO().incrementDbGeneration(getVm().getId());


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Iadbb5482e4292469aee3cbac51d2531cd476ff72
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Liron Ar <lara...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to