Change in ovirt-engine[master]: core: verify image removal during Live Merge

Tal Nisan has submitted this change and it was merged. Change subject: core: verify image removal during Live Merge ...................................................................... core: verify image removal during Live Merge In the multi-step Live Merge process, an image is removed after the merge operation is completed by use of the deleteVolume vdsm verb. If vdsm dies during this task the task must be recovered when vdsm starts up, resulting in a task status of 'cleanSuccess'. Unfortunately, this status is ambiguous regarding whether the deletion succeeded or not, and this causes the entire Live Merge operation to fail. Not only does the initial attempt fail in this case, but a retry will encounter the same error and cleaning up the system requires manual intervention. This fix adds another step to Live Merge to check whether image deletion succeeds regardless of the returned status of deleteVolume. This allows Live Merge to succeed in above case where deletion did occur yet the command was unable to report the success. Note that SPM removal will fix this problem because deleteVolume will no longer report any ambiguous statuses, so this fix may be reverted once SPM removal is in place and the engine no longer needs compatibility with host versions having SPM. Change-Id: Ib3d8e35ff65cf2d9e0cf141a8a20f5dcd6cf8544 Bug-Url: https://bugzilla.redhat.com/1227497 Signed-off-by: Greg Padgett <gpadgett@redhat.com> --- A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/DestroyImageCheckCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/snapshots/RemoveSnapshotSingleDiskLiveCommand.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/RemoveSnapshotSingleDiskLiveStep.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java A backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/GetVolumeInfoVDSCommandParameters.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/JsonRpcVdsServer.java A backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/GetVolumeInfoVDSCommand.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/IVdsServer.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerConnector.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsServerWrapper.java A backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VolumeInfoReturnForXmlRpc.java 12 files changed, 242 insertions(+), 0 deletions(-) Approvals: Greg Padgett: Verified Jenkins CI: Passed CI tests Allon Mureinik: Looks good to me, approved -- To view, visit https://gerrit.ovirt.org/51680 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: merged Gerrit-Change-Id: Ib3d8e35ff65cf2d9e0cf141a8a20f5dcd6cf8544 Gerrit-PatchSet: 3 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Greg Padgett <gpadgett@redhat.com> Gerrit-Reviewer: Allon Mureinik <amureini@redhat.com> Gerrit-Reviewer: Daniel Erez <derez@redhat.com> Gerrit-Reviewer: Freddy Rolland <frolland@redhat.com> Gerrit-Reviewer: Greg Padgett <gpadgett@redhat.com> Gerrit-Reviewer: Jenkins CI Gerrit-Reviewer: Liron Aravot <laravot@redhat.com> Gerrit-Reviewer: Tal Nisan <tnisan@redhat.com> Gerrit-Reviewer: gerrit-hooks <automation@ovirt.org>
participants (1)
-
tnisan@redhat.com