Bug 1957595 - Failed to import VM from KVM
Summary: Failed to import VM from KVM
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: ovirt-engine
Classification: oVirt
Component: General
Version: 4.4.6.6
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ovirt-4.4.6-1
: 4.4.6.7
Assignee: Lucia Jelinkova
QA Contact: Qin Yuan
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-05-06 06:16 UTC by Qin Yuan
Modified: 2021-05-13 06:40 UTC (History)
3 users (show)

Fixed In Version: ovirt-engine-4.4.6.7
Clone Of:
Environment:
Last Closed: 2021-05-12 08:54:04 UTC
oVirt Team: Virt
Embargoed:
pm-rhel: ovirt-4.4+
ahadas: blocker+


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
oVirt gerrit 114675 0 master MERGED engine: Init bios for all vms from external providers 2021-05-06 12:13:05 UTC
oVirt gerrit 114676 0 ovirt-engine-4.4.6.z MERGED engine: Init bios for all vms from external providers 2021-05-06 12:15:22 UTC

Description Qin Yuan 2021-05-06 06:16:44 UTC
Description of problem:
Failed to import VM from KVM, errors in engine log:

2021-05-06 08:06:52,559+03 INFO  [org.ovirt.engine.core.bll.exportimport.ImportVmFromExternalProviderCommand] (EE-ManagedThreadFactory-engine-Thread-85138) [931d72ab-f85a-4347-91b4-76c2e5a5d40d] Running command: ImportVmFromExternalProviderCommand internal: false. Entities affected :  ID: 34a82017-7bdd-4334-8145-9c3ccac395ce Type: ClusterAction group CREATE_VM with role type USER,  ID: 507e07b2-47e2-4b7c-8ee9-2b0cc56d2e92 Type: StorageAction group IMPORT_EXPORT_VM with role type ADMIN
2021-05-06 08:06:52,682+03 ERROR [org.ovirt.engine.core.bll.storage.disk.AddDiskCommand] (EE-ManagedThreadFactory-engine-Thread-85138) [931d72ab-f85a-4347-91b4-76c2e5a5d40d] Error during ValidateFailure.: java.lang.NullPointerException
	at deployment.engine.ear.bll.jar//org.ovirt.engine.core.bll.validator.storage.DiskVmElementValidator.isDiskInterfaceSupported(DiskVmElementValidator.java:88)
	at deployment.engine.ear.bll.jar//org.ovirt.engine.core.bll.validator.storage.DiskVmElementValidator.isVirtIoScsiValid(DiskVmElementValidator.java:71)
	at deployment.engine.ear.bll.jar//org.ovirt.engine.core.bll.storage.disk.AddDiskCommand.checkIfImageDiskCanBeAdded(AddDiskCommand.java:301)
	at deployment.engine.ear.bll.jar//org.ovirt.engine.core.bll.storage.disk.AddDiskCommand.validate(AddDiskCommand.java:197)
	at deployment.engine.ear.bll.jar//org.ovirt.engine.core.bll.CommandBase.internalValidateInTransaction(CommandBase.java:824)
	at org.ovirt.engine.core.utils//org.ovirt.engine.core.utils.transaction.TransactionSupport.executeInSuppressed(TransactionSupport.java:140)
	at org.ovirt.engine.core.utils//org.ovirt.engine.core.utils.transaction.TransactionSupport.executeInSuppressed(TransactionSupport.java:157)
	at deployment.engine.ear.bll.jar//org.ovirt.engine.core.bll.CommandBase.internalValidate(CommandBase.java:803)
	at deployment.engine.ear.bll.jar//org.ovirt.engine.core.bll.CommandBase.executeAction(CommandBase.java:417)
	at deployment.engine.ear.bll.jar//org.ovirt.engine.core.bll.executor.DefaultBackendActionExecutor.execute(DefaultBackendActionExecutor.java:13)
	at deployment.engine.ear.bll.jar//org.ovirt.engine.core.bll.Backend.runAction(Backend.java:442)
	at deployment.engine.ear.bll.jar//org.ovirt.engine.core.bll.Backend.runActionImpl(Backend.java:424)
	at deployment.engine.ear.bll.jar//org.ovirt.engine.core.bll.Backend.runInternalAction(Backend.java:630)
...
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:834)
	at org.glassfish.javax.enterprise.concurrent.0.redhat-1//org.glassfish.enterprise.concurrent.ManagedThreadFactoryImpl$ManagedThread.run(ManagedThreadFactoryImpl.java:250)

2021-05-06 08:06:52,685+03 INFO  [org.ovirt.engine.core.bll.storage.disk.AddDiskCommand] (EE-ManagedThreadFactory-engine-Thread-85138) [931d72ab-f85a-4347-91b4-76c2e5a5d40d] Lock freed to object 'EngineLock:{exclusiveLocks='[b8aa9355-ff83-4df9-827d-36551236bc95=DISK, 0762c4e2-26bb-44a4-93ad-96aa0c394e3a=VM_DISK_BOOT]', sharedLocks=''}'
2021-05-06 08:06:52,688+03 ERROR [org.ovirt.engine.core.bll.exportimport.ImportVmFromExternalProviderCommand] (EE-ManagedThreadFactory-engine-Thread-85138) [931d72ab-f85a-4347-91b4-76c2e5a5d40d] Command 'org.ovirt.engine.core.bll.exportimport.ImportVmFromExternalProviderCommand' failed: EngineException: Failed to create disk! (Failed with error ENGINE and code 5001)
...
2021-05-06 08:06:52,706+03 ERROR [org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogDirector] (EE-ManagedThreadFactory-engine-Thread-85138) [931d72ab-f85a-4347-91b4-76c2e5a5d40d] EVENT_ID: IMPORTEXPORT_IMPORT_VM_FAILED(1,153), Failed to import Vm automation_v2v_rhel_7_2_kvm to Data Center golden_env_mixed, Cluster golden_env_mixed_1


Version-Release number of selected component (if applicable):
ovirt-engine-4.4.6.6-0.10.el8ev.noarch
vdsm-4.40.60.6-1.el8ev.x86_64
libvirt-7.0.0-13.module+el8.4.0+10604+5608c2b4.x86_64

How reproducible:
100%

Steps to Reproduce:
1. Import VM from KVM with the following parameters:
   - Data Center: golden_env_mixed(compatibility version 4.6)
   - Source: KVM
   - External Provider: Custom
   - URI: qemu+tcp://confidential/system
   - Authentication: username/password
   - Proxy Host: any host in the data center
   - Virtual machines to import: automation_v2v_rhel_7_2_kvm
   - Storage domain: nfs_0
   - Target cluster: golden_env_mixed_1
   - CPU profile: golden_env_mixed_1
   - Allocation policy: Thin Provision

Actual results:
1. Importing VM from KVM failed.

Expected results:
1. Importing VM from KVM should succeed.

Additional info:

Comment 2 Arik 2021-05-06 07:01:21 UTC
I suspect vm.getBiosType() returns null
Qin, do you have a libvirt server we can test with?

Comment 3 Qin Yuan 2021-05-08 02:15:48 UTC
Verified with:
ovirt-engine-4.4.6.7-0.1.el8ev.noarch

Steps:
The same as steps in Bug description

Results:
Importing VM from KVM succeeds.

Comment 4 Saku Vainikainen 2021-05-13 06:40:19 UTC
I have the same problem. Source KVM:

> virsh version
Compiled against library: libvirt 5.0.0
Using library: libvirt 5.0.0
Using API: QEMU 5.0.0
Running hypervisor: QEMU 3.1.0

> virsh sysinfo
  <processor>
    <entry name='socket_destination'>SOCKET 0</entry>
    <entry name='type'>Central Processor</entry>
    <entry name='family'>Core i7</entry>
    <entry name='manufacturer'>Intel</entry>
    <entry name='signature'>Type 0, Family 6, Model 62, Stepping 4</entry>
    <entry name='version'>Intel(R) Core(TM) i7-4820K CPU @ 3.70GHz</entry>
    <entry name='external_clock'>100 MHz</entry>
    <entry name='max_speed'>7000 MHz</entry>
    <entry name='status'>Populated, Enabled</entry>
    <entry name='serial_number'>Not Specified</entry>
    <entry name='part_number'>Not Specified</entry>
  </processor>

> virsh edit xxxx
  <os>
    <type arch='x86_64' machine='pc-q35-3.1'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/OVMF/OVMF_CODE.fd</loader>
    <nvram>/var/lib/libvirt/qemu/nvram/xxxx_VARS.fd</nvram>
    <boot dev='hd'/>
  </os>
  <devices>
   <emulator>/usr/bin/qemu-system-x86_64</emulator>
  </devices>


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