Liron Ar has uploaded a new change for review.

Change subject: core: lsm - unlock all image snapshots on snapshot failure
......................................................................

core: lsm - unlock all image snapshots on snapshot failure

When failing to create live snapshot, all the relevant disks snapshots
should be unlocked.

Change-Id: Ia583b6ba2f8581865fe5fa1fabcd3feb755bce54
Related To: https://bugzilla.redhat.com/show_bug.cgi?id=1028768
Signed-off-by: Liron Aravot <lara...@redhat.com>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/BaseImagesCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/lsm/LiveSnapshotTaskHandler.java
2 files changed, 9 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/34/21834/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/BaseImagesCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/BaseImagesCommand.java
index a92baf3..13c1b55 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/BaseImagesCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/BaseImagesCommand.java
@@ -352,7 +352,9 @@
             removeSnapshot(getDestinationDiskImage());
         }
 
-        unLockImage();
+        if (!getParameters().isLeaveLocked()) {
+            unLockImage();
+        }
     }
 
     /**
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/lsm/LiveSnapshotTaskHandler.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/lsm/LiveSnapshotTaskHandler.java
index 2048542..4115ec8 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/lsm/LiveSnapshotTaskHandler.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/lsm/LiveSnapshotTaskHandler.java
@@ -97,6 +97,8 @@
         }
         endCreateAllSnapshots();
 
+        unlockAllDiskSnapshots();
+
         ExecutionHandler.endJob(enclosingCommand.getExecutionContext(), false);
         enclosingCommand.setExecutionContext(null);
         enclosingCommand.getReturnValue().setSucceeded(true);
@@ -104,6 +106,10 @@
 
     @Override
     public void compensate() {
+        unlockAllDiskSnapshots();
+    }
+
+    private void unlockAllDiskSnapshots() {
         // Unlock the image we left locked
         for (LiveMigrateDiskParameters parameters : 
enclosingCommand.getParameters().getParametersList()) {
             
ImagesHandler.updateAllDiskImageSnapshotsStatus(parameters.getImageGroupID(), 
ImageStatus.OK);


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ia583b6ba2f8581865fe5fa1fabcd3feb755bce54
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: ovirt-engine-3.3
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