Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1405940

Summary: Auto-generated snapshot remains locked when trying to move disk between local and shared SDs
Product: [oVirt] ovirt-engine Reporter: Lilach Zitnitski <lzitnits>
Component: BLL.StorageAssignee: Maor <mlipchuk>
Status: CLOSED CURRENTRELEASE QA Contact: Lilach Zitnitski <lzitnits>
Severity: high Docs Contact:
Priority: unspecified    
Version: 4.1.0CC: bugs, nsoffer, tnisan
Target Milestone: ovirt-4.1.0-betaFlags: rule-engine: ovirt-4.1+
rule-engine: planning_ack+
rule-engine: devel_ack+
ratamir: testing_ack+
Target Release: 4.1.0.2   
Hardware: x86_64   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-02-01 14:52:12 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Storage RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
logs zip none

Description Lilach Zitnitski 2016-12-19 09:06:05 UTC
Description of problem:
When trying to move active disks from local SD to shared SD and vice-versa, migration completes, but auto-generated for LVM snapshot fails to delete. 

Version-Release number of selected component (if applicable):
ovirt-engine-4.1.0-0.2.master.20161216212250.gitc040969.el7.centos.noarch
vdsm-4.18.999-1184.git090267e.el7.centos.x86_64

How reproducible:
100%

Steps to Reproduce:
1. create vm with disks and start the vm
2. try to move one of the disks to a different type of storage domain (local/shared according to the original storage domain)

Actual results:
disk move completes successfully and it looks like the disk moved to the destination SD, but the snapshot generated for the LSM remains locked and cannot be deleted.

Expected results:
disk move completes successfully and auto-generated snapshot deletion succeeds. 

Additional info:

engine.log

2016-12-19 10:37:21,529+02 INFO  [org.ovirt.engine.core.vdsbroker.irsbroker.CreateSnapshotVDSCommand] (org.ovirt.thread.pool-6-thread-20) [5b61eb7f] START, CreateSnapshotVDSCommand( CreateSnapshotVDSCommandParameters:{runAsync='true', storagePoolId='5d8ff423-ab2d-4773-a75c-9e872ee44bcd', ignoreFailoverLimit='false', storageDomainId='c363ab3d-7ea4-466f-8d3c-dc3e6048ba4c', imageGroupId='79d3d96c-dcf7-4c46-8d6f-70de56bda2b5', imageSizeInBytes='10737418240', volumeFormat='COW', newImageId='793d453d-98b2-4eca-ada7-d31f11892c07', newImageDescription='', imageInitialSizeInBytes='0', imageId='6ce0dcb8-939c-44d8-bbf9-a01cf2059038', sourceImageGroupId='79d3d96c-dcf7-4c46-8d6f-70de56bda2b5'}), log id: 15247e7d

2016-12-19 10:37:44,267+02 ERROR [org.ovirt.engine.core.bll.CommandsFactory] (DefaultQuartzScheduler3) [7a32be50] An exception has occurred while trying to create a command object for command 'LiveMigrateDisk' with parameters 'LiveMigrateDiskParameters:{commandId='5b616198-6bca-4aff-848f-2e60efbb437e', user='admin', commandType='LiveMigrateDisk'}': WELD-000049: Unable to invoke protected final void org.ovirt.engine.core.bll.CommandBase.postConstruct() on org.ovirt.engine.core.bll.storage.lsm.LiveMigrateDiskCommand@2a96393f
2016-12-19 10:37:44,272+02 INFO  [org.ovirt.engine.core.bll.SerialChildCommandsExecutionCallback] (DefaultQuartzScheduler3) [36e56711] Command 'LiveMigrateVmDisks' (id: '3b123005-8132-4021-93f7-88da58b977fe') waiting on child command id: '816cac16-f760-4ba4-a4bd-a4ce780edd47' type:'RemoveSnapshot' to complete

vdsm.log

2016-12-19 10:38:49,469 WARN  (libvirt/events) [virt.vm] (vmId='e62b08cd-237f-4f1d-bd80-3e8ba9d484d6') unknown eventid 8 args ('/rhev/data-center/5d8ff423-ab2d-4773-a75c-9e872ee44bcd/c363ab3d-7ea4-466f-8d3c-dc3e6048ba4c/images/79d3d96c-dcf7-4c46-8d6f-70de56bda2b5/793d453d-98b2-4eca-ada7-d31f11892c07', 2, 3, 8) (clientIF:540)

Comment 1 Lilach Zitnitski 2016-12-19 09:06:52 UTC
Created attachment 1233333 [details]
logs zip

engine.log
vdsm.log

Comment 2 Maor 2016-12-19 13:18:37 UTC
Nir, do we have lease on local storage domain?
It seems that the failure here is since the volume struct, returned from getVolumeInfo does not contain any lease attribute and we get NPE

Comment 3 Lilach Zitnitski 2017-01-01 15:31:40 UTC
--------------------------------------
Tested with the following code:
----------------------------------------
rhevm-4.1.0-0.3.beta2.el7.noarch
vdsm-4.19.1-1.el7ev.x86_64

Tested with the following scenario:

Steps to Reproduce:
1. create vm with disks and start the vm
2. try to move one of the disks to a different type of storage domain (local/shared according to the original storage domain)

Actual results:
Disk moved and auto generated for lsm snapshot deleted successfully 

Moving to VERIFIED!