Bug 1064931 - Cannot run VMs on host while VM is migrating to it
Summary: Cannot run VMs on host while VM is migrating to it
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: oVirt
Classification: Retired
Component: ovirt-engine-core
Version: 3.5
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
: 3.5.0
Assignee: Arik
QA Contact: Nikolai Sednev
URL:
Whiteboard: virt
Depends On:
Blocks: 1118187
TreeView+ depends on / blocked
 
Reported: 2014-02-13 15:09 UTC by Arik
Modified: 2016-02-10 19:49 UTC (History)
8 users (show)

Fixed In Version: ovirt-3.5.0-alpha1
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 1118187 (view as bug list)
Environment:
Last Closed: 2014-10-17 12:23:49 UTC
oVirt Team: Virt
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
oVirt gerrit 24799 0 None MERGED core: make migrate commands non-transactive Never

Description Arik 2014-02-13 15:09:58 UTC
Description of problem:
MigrateVmCommand is transactive from some reason. When it is scheduling a host it also increases the pending resources on that host, thus locking the host in the DB until the execute phase is done. Since RunVm command will also tries to update the pending resources on the scheduled host, in case the scheduled host is destination host in migration process, it won't be possible to update them and the RunVm command will have to wait until the execute phase of the migration ends (which can be long in case of failures & reruns)

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


How reproducible:
100%

Steps to Reproduce:
1. Migrate VM to host X
2. Stop (with debugger) right after scheduling the host
3. Try to run another VM on host X

Actual results:
The run command won't end

Expected results:
The VM we try to run on host X need to start.

Additional info:
We need to get rid of the transaction in migrate commands

Comment 1 Nikolai Sednev 2014-08-12 09:31:13 UTC
Hi Arik,
Please describe in more details on how to execute the second step, " Stop (with debugger) right after scheduling the host".

I tested the scenario, while migrating VM2 to host rose-05 first and then starting VM1 on that particular host rose-05, both actions worked for me well.

Please provide missing info, so I could verify the whole process using step 2 and not only via WEBUI.

Components used on 3.5:
oVirt Engine Version: 3.5.0-0.0.master.20140804172041.git23b558e.el6
ovirt-hosted-engine-setup-1.2.0-0.1.master.el6.noarch
ovirt-hosted-engine-ha-1.2.1-0.2.master.20140805072346.el6.noarch
sanlock-2.8-1.el6.x86_64
libvirt-0.10.2-29.el6_5.10.x86_64
vdsm-4.16.1-6.gita4a4614.el6.x86_64
qemu-kvm-rhev-0.12.1.2-2.415.el6_5.14.x86_64

Comment 3 Michal Skrivanek 2014-08-14 06:41:13 UTC
sure. if Nikolai verified there are no regressions it's good enough

Comment 5 Arik 2014-08-19 12:11:29 UTC
Hi Nikolai,

It is not feasible for you to verify this fix without a debugger.
I'm setting this bug as CodeChange, so only regressions should be checked.

Comment 6 Nikolai Sednev 2014-08-19 12:26:16 UTC
Works for me with latest SW components as were described at comment 1.

Comment 7 Sandro Bonazzola 2014-10-17 12:23:49 UTC
oVirt 3.5 has been released and should include the fix for this issue.


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