Arik Hadas has uploaded a new change for review. Change subject: core: fix stateless VM which was reverted to ram snapshot ......................................................................
core: fix stateless VM which was reverted to ram snapshot We were removing the memory volumes from snapshots in case the live part of the snapshot did not happen and the snapshot is set to include memory. This logic is not good because when it comes to stateless snapshots, the snapshots contain memory (the memory that was associated with the active snapshot) and it is not a live snapshot, but we don't want to remove the memory associated with it. Therefore, this patch changes the logic that is used to determine whether or not to remove the memory which is associated with snapshot when the live part of the snapshot doesn't happen, such that we'll also ask if the memory was created as part of this snapshot and only if it is, we will delete it. Change-Id: I0a4e479424757fab1107797568bc019681de8265 Bug-Url: https://bugzilla.redhat.com/1004184 Signed-off-by: Arik Hadas <aha...@redhat.com> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java 1 file changed, 4 insertions(+), 3 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/63/21163/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java index 364d65b..ed02148 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java @@ -227,9 +227,8 @@ } else { // If the created snapshot contains memory, remove the memory volumes as // they are not going to be in use since no live snapshot is created - if (createdSnapshot.containsMemory()) { + if (getParameters().isSaveMemory() && createdSnapshot.containsMemory()) { logMemorySavingFailed(); - getSnapshotDao().removeMemoryFromSnapshot(createdSnapshot.getId()); removeMemoryVolumesOfSnapshot(createdSnapshot); } @@ -239,7 +238,9 @@ revertToActiveSnapshot(createdSnapshot.getId()); // If the removed snapshot contained memory, remove the memory volumes // Note that the memory volumes might not have been created - removeMemoryVolumesOfSnapshot(createdSnapshot); + if (getParameters().isSaveMemory() && createdSnapshot.containsMemory()) { + removeMemoryVolumesOfSnapshot(createdSnapshot); + } } else { log.warnFormat("No snapshot was created for VM {0} which is in LOCKED status", getVmId()); } -- To view, visit http://gerrit.ovirt.org/21163 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I0a4e479424757fab1107797568bc019681de8265 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Arik Hadas <aha...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches