Bug 1392380 - Importing VMs from storage domain not working if the template does not have a disk
Summary: Importing VMs from storage domain not working if the template does not have a...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: ovirt-engine
Version: 4.0.3
Hardware: All
OS: Linux
unspecified
high
Target Milestone: ovirt-4.0.6
: ---
Assignee: Maor
QA Contact: Nisim Simsolo
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-11-07 11:27 UTC by nijin ashok
Modified: 2019-12-16 07:23 UTC (History)
13 users (show)

Fixed In Version: ovirt-engine-4.0.6
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-01-10 17:00:34 UTC
oVirt Team: Storage
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
engine log (1.50 KB, text/plain)
2016-11-07 11:48 UTC, nijin ashok
no flags Details
engine log (143.46 KB, text/plain)
2016-11-07 13:20 UTC, nijin ashok
no flags Details
vdsm log (5.72 MB, text/plain)
2016-11-07 13:21 UTC, nijin ashok
no flags Details
SELECT entity_guid, ovf_data FROM unregistered_ovf_of_entities where entity_guid = 'a4c1e4a8-2493-4fd7-83c6-e98fca386009'; (27.19 KB, text/plain)
2016-11-07 16:01 UTC, nijin ashok
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Knowledge Base (Solution) 2769561 0 None None None 2016-11-16 08:31:30 UTC
Red Hat Product Errata RHBA-2017:0043 0 normal SHIPPED_LIVE Red Hat Virtualization Manager 4.0.6 2017-01-10 21:52:43 UTC
oVirt gerrit 66208 0 'None' MERGED core: Fix import VM validation based on an empty template. 2020-12-13 07:37:08 UTC
oVirt gerrit 66249 0 'None' MERGED core: Fix import VM validation based on an empty template. 2020-12-13 07:36:37 UTC

Description nijin ashok 2016-11-07 11:27:13 UTC
Description of problem:

If the VM was built on a template which is not having any disk, the VM import from data storage domain will fail with error "Cannot import VM. The selected storage domain does not contain the VM template". 


Version-Release number of selected component (if applicable):

rhevm-4.0.4.4-0.1.el7ev.noarch

How reproducible:

100%

Steps to Reproduce:

1. Create a template without any disk. 

2. Create VM from this template and add a disk to this VM.

3. Detach the storage domain which contains this disk from Data Center.

4. Attach the storage domain back and try to import the VM again. 

5. It fails with error "Cannot import VM. The selected storage domain does not contain the VM template"

Actual results:

Importing VMs are failing with error "Cannot import VM. The selected storage domain does not contain the VM template"

Expected results:

Importing VMs should work.

Additional info:

Comment 1 nijin ashok 2016-11-07 11:48:37 UTC
Created attachment 1217977 [details]
engine log

Comment 2 Maor 2016-11-07 12:15:15 UTC
Can you please attach the full engine and VDSM logs

Comment 3 nijin ashok 2016-11-07 13:19:28 UTC
I again replicated the steps and uploading the relevant vdsm and engine logs. It was failing with below error. 


2016-11-07 07:37:33,838 INFO  [org.ovirt.engine.core.bll.exportimport.ImportVmFromConfigurationCommand] (default task-32) [7da0fa8a] Lock Acquired to object 'EngineLock:{exclusiveLocks='[a4c1e4a8-2493-4fd7-83c6-e98fca386009=<VM, ACTION_TYPE_FAILED_VM_IS_BEING_IMPORTED$VmName import-vm>, import-vm=<VM_NAME, ACTION_TYPE_FAILED_NAME_ALREADY_USED>]', sharedLocks='[a4c1e4a8-2493-4fd7-83c6-e98fca386009=<REMOTE_VM, ACTION_TYPE_FAILED_VM_IS_BEING_IMPORTED$VmName import-vm>]'}'
2016-11-07 07:37:33,899 WARN  [org.ovirt.engine.core.bll.exportimport.ImportVmFromConfigurationCommand] (default task-32) [7da0fa8a] Validation of action 'ImportVmFromConfiguration' failed for user admin@internal-authz. Reasons: VAR__ACTION__IMPORT,VAR__TYPE__VM,ACTION_TYPE_FAILED_TEMPLATE_NOT_FOUND_ON_DESTINATION_DOMAIN
2016-11-07 07:37:33,899 INFO  [org.ovirt.engine.core.bll.exportimport.ImportVmFromConfigurationCommand] (default task-32) [7da0fa8a] Lock freed to object 'EngineLock:{exclusiveLocks='[a4c1e4a8-2493-4fd7-83c6-e98fca386009=<VM, ACTION_TYPE_FAILED_VM_IS_BEING_IMPORTED$VmName import-vm>, import-vm=<VM_NAME, ACTION_TYPE_FAILED_NAME_ALREADY_USED>]', sharedLocks='[a4c1e4a8-2493-4fd7-83c6-e98fca386009=<REMOTE_VM, ACTION_TYPE_FAILED_VM_IS_BEING_IMPORTED$VmName import-vm>]'}'


The issue remains same even if we manually removed the template from environment and import the template again from storage domain.

Comment 4 nijin ashok 2016-11-07 13:20:29 UTC
Created attachment 1217994 [details]
engine log

Comment 5 nijin ashok 2016-11-07 13:21:56 UTC
Created attachment 1217996 [details]
vdsm log

Comment 6 Maor 2016-11-07 15:37:37 UTC
It looks like there was a problem creating the OVF_STORE disks (see [1]):
The vdsm log does not contain 2016-11-07 07:35:37, Can you please also attach the VDSM logs from that hour, probably should be vdsm.log.1.xz or vdsm.log.2.xz

[1]
2016-11-07 07:35:37,509 ERROR [org.ovirt.engine.core.bll.storage.ovfstore.CreateOvfVolumeForStorageDomainCommand] (DefaultQuartzScheduler6) [784bf865] Ending command 'org.ovirt.engine.core.bll.storage.ovfstore.CreateOvfVolumeForStorageDomainCommand' with failure.
2016-11-07 07:35:37,512 ERROR [org.ovirt.engine.core.bll.storage.disk.AddDiskCommand] (DefaultQuartzScheduler6) [784bf865] Ending command 'org.ovirt.engine.core.bll.storage.disk.AddDiskCommand' with failure.
2016-11-07 07:35:37,513 WARN  [org.ovirt.engine.core.bll.storage.disk.AddDiskCommand] (DefaultQuartzScheduler6) [784bf865] VmCommand::EndVmCommand: Vm is null - not performing endAction on Vm
2016-11-07 07:35:37,546 ERROR [org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogDirector] (DefaultQuartzScheduler6) [784bf865] Correlation ID: 784bf865, Call Stack: null, Custom Event ID: -1, Message: Add-Disk operation failed to complete.
2016-11-07 07:35:37,554 WARN  [org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogDirector] (DefaultQuartzScheduler6) [] Correlation ID: 7a78e5d8, Call Stack: null, Custom Event ID: -1, Message: Failed to create OVF store disk for Storage Domain hosted_storage. 
 OVF data won't be updated meanwhile for that domain.
2016-11-07 07:35:37,581 ERROR [org.ovirt.engine.core.bll.storage.ovfstore.CreateOvfVolumeForStorageDomainCommand] (DefaultQuartzScheduler6) [491e0ca1] Ending command 'org.ovirt.engine.core.bll.storage.ovfstore.CreateOvfVolumeForStorageDomainCommand' with failure.
2016-11-07 07:35:37,583 ERROR [org.ovirt.engine.core.bll.storage.disk.AddDiskCommand] (DefaultQuartzScheduler6) [491e0ca1] Ending command 'org.ovirt.engine.core.bll.storage.disk.AddDiskCommand' with failure.
2016-11-07 07:35:37,583 WARN  [org.ovirt.engine.core.bll.storage.disk.AddDiskCommand] (DefaultQuartzScheduler6) [491e0ca1] VmCommand::EndVmCommand: Vm is null - not performing endAction on Vm
2016-11-07 07:35:37,604 ERROR [org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogDirector] (DefaultQuartzScheduler6) [491e0ca1] Correlation ID: 491e0ca1, Call Stack: null, Custom Event ID: -1, Message: Add-Disk operation failed to complete.

Comment 7 Maor 2016-11-07 15:45:12 UTC
I also see the message:

"Error parsing OVF due to Error loading ovf, messagenull"

Can u please also share the output of :

SELECT entity_guid, ovf_data FROM unregistered_ovf_of_entities where entity_guid = 'a4c1e4a8-2493-4fd7-83c6-e98fca386009';

Comment 8 nijin ashok 2016-11-07 15:59:51 UTC
Hello Maor,

The hosted_storage is a different storage domain. The activity was done on the storage domain "data".


2016-11-07 07:35:44,700 INFO  [org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogDirector] (org.ovirt.thread.pool-6-thread-14) [342f69b] Correlation ID: 342f69b, Job ID: 8deb2b1a-b5a1-4a58-b22f-1313a003ab8d, Call Stack: null, Custom Event ID: -1, Message: Storage Domain storage was detached from Data Center Default by admin@internal-authz

The ovf update was successful.


2016-11-07 07:35:23,884 INFO  [org.ovirt.engine.core.bll.ConcurrentChildCommandsExecutionCallback] (DefaultQuartzScheduler10) [27b7692a] Command 'DeactivateStorageDomainWithOvfUpdate' (id: '52dc4f7d-ed63-489b-9a21-cb87d24444d7') waiting on child command id: 'f51d77e6-03d9-4433-b451-b1ef27263869' type:'ProcessOvfUpdateForStorageDomain' to complete
2016-11-07 07:35:24,928 INFO  [org.ovirt.engine.core.bll.SerialChildCommandsExecutionCallback] (DefaultQuartzScheduler3) [228b37d0] Command 'ProcessOvfUpdateForStorageDomain' id: 'f51d77e6-03d9-4433-b451-b1ef27263869' child commands '[37f2d452-c92b-4122-baee-ccd6b5af790b, 2e907a1d-6350-4302-bc4f-265629cc1a77]' executions were completed, status 'SUCCEEDED'

2016-11-07 07:37:06,241 INFO  [org.ovirt.engine.core.bll.storage.domain.AttachStorageDomainToPoolCommand] (org.ovirt.thread.pool-6-thread-31) [452aa127] Adding OVF data of entity id '7e7c4b70-51df-4613-a527-af3963a68560' and entity name 'test-vm'
2016-11-07 07:37:06,250 INFO  [org.ovirt.engine.core.bll.storage.domain.AttachStorageDomainToPoolCommand] (org.ovirt.thread.pool-6-thread-31) [452aa127] Adding OVF data of entity id '6c7f2275-5f1f-48c7-81ee-f5ddb868767a' and entity name 'test-template'
2016-11-07 07:37:06,254 INFO  [org.ovirt.engine.core.bll.storage.domain.AttachStorageDomainToPoolCommand] (org.ovirt.thread.pool-6-thread-31) [452aa127] Adding OVF data of entity id '6e633374-0997-4e48-9b58-95ef5de09eda' and entity name 'vm-without-disk'
2016-11-07 07:37:06,261 INFO  [org.ovirt.engine.core.bll.storage.domain.AttachStorageDomainToPoolCommand] (org.ovirt.thread.pool-6-thread-31) [452aa127] Adding OVF data of entity id 'a4c1e4a8-2493-4fd7-83c6-e98fca386009' and entity name 'import-vm'
2016-11-07 07:37:06,265 INFO  [org.ovirt.engine.core.bll.storage.domain.AttachStorageDomainToPoolCommand] (org.ovirt.thread.pool-6-thread-31) [452aa127] Adding OVF data of entity id '17872ecc-6766-4f34-aecc-95bef6890a9a' and entity name 'template-without-disk'
2016-11-07 07:37:06,298 INFO  [org.ovirt.engine.core.bll.storage.domain.AttachStorageDomainToPoolCommand] (org.ovirt.thread.pool-6-thread-31) [452aa127] Disk OVF_STORE with id 'c8d868cd-6169-4108-9388-ec8c9bd732f7' already exists in the engine, therefore will not be part of the unregistered disks.
2016-11-07 07:37:06,313 INFO  [org.ovirt.engine.core.bll.storage.domain.AttachStorageDomainToPoolCommand] (org.ovirt.thread.pool-6-thread-31) [452aa127] Adding unregistered disk of disk id '66a4775b-3853-4b6e-9b9e-6adbbd07be16' and disk alias 'koutuk-disk1.vmdk'
2016-11-07 07:37:06,313 INFO  [org.ovirt.engine.core.bll.storage.domain.AttachStorageDomainToPoolCommand] (org.ovirt.thread.pool-6-thread-31) [452aa127] Disk OVF_STORE with id 'fbbf50cf-cde3-40a3-b116-8c5f0c6a30ae' already exists in the engine, therefore will not be part of the unregistered disks.
2016-11-07 07:37:06,316 INFO  [org.ovirt.engine.core.bll.storage.domain.AttachStorageDomainToPoolCommand] (org.ovirt.thread.pool-6-thread-31) [452aa127] Adding unregistered disk of disk id '2366660d-f973-4c91-842c-00403abd20fc' and disk alias 'import-vm_Disk1'
2016-11-07 07:37:06,321 INFO  [org.ovirt.engine.core.bll.storage.domain.AttachStorageDomainToPoolCommand] (org.ovirt.thread.pool-6-thread-31) [452aa127] Adding unregistered disk of disk id 'ffe38833-ec69-45e2-844d-8b338c283a9d' and disk alias 'test-vm_Disk1'


This is from my test environment since I was able to reproduce customer's issue. I think the attached vdsm log should contain the data during the activity. I don't have old log as I deleted that just before the activity.

Comment 9 nijin ashok 2016-11-07 16:01:55 UTC
Created attachment 1218093 [details]
SELECT entity_guid, ovf_data FROM unregistered_ovf_of_entities where entity_guid = 'a4c1e4a8-2493-4fd7-83c6-e98fca386009';

Comment 12 Nisim Simsolo 2016-11-29 14:50:54 UTC
Verified:
ovirt-engine-4.0.6.1-0.1.el7ev
qemu-kvm-rhev-2.6.0-27.el7.x86_64
vdsm-4.18.17-1.el7ev.x86_64
sanlock-3.4.0-1.el7.x86_64
libvirt-2.0.0-10.el7.x86_64

Comment 14 errata-xmlrpc 2017-01-10 17:00:34 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2017-0043.html


Note You need to log in before you can comment on or make changes to this bug.