Bug 1313369

Summary: VM parameters set in Edit running VM, are not updated after VM restart.
Product: [oVirt] ovirt-engine Reporter: Ilanit Stein <istein>
Component: BLL.VirtAssignee: Shmuel Melamud <smelamud>
Status: CLOSED CURRENTRELEASE QA Contact: meital avital <mavital>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 3.6.3.3CC: achareka, ahadas, bugs, ebenahar, eedri, jniederm, mastermind-muell, mavital, mgoldboi, michal.skrivanek, nsimsolo, rgolan, s.kieske, slitmano, smelamud, tjelinek
Target Milestone: ovirt-3.6.4Keywords: Regression
Target Release: 3.6.4Flags: rule-engine: ovirt-3.6.z+
rule-engine: blocker+
mgoldboi: planning_ack+
tjelinek: devel_ack+
mavital: testing_ack+
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: 3.6.4-2 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-04-05 13:54:31 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Virt RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1238742, 1317258, 1320879    
Attachments:
Description Flags
Update guaranteed mem to 3047M, then restart
none
Engine log none

Description Ilanit Stein 2016-03-01 13:36:27 UTC
Description of problem:
Update of guaranteed memory, while VM is up, is not updated, after VM power off/on.  

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

How reproducible:
100%

Steps to Reproduce:
1. Have a running VM with some OS.
2. Update guaranteed memory to a value, different than default (1024 M), 
but equal or less than VM physical memory. 
(Indeed next run snapshot is updated with the new value) 
3. Power off VM, then start VM -> guaranteed memory value is still 1024 M 
(Restore snapshot do not have the new guaranteed memory value).

Additional info:
Guaranteed memory is updated to a new value, if it is done on a "down" VM, and then VM is started.

Comment 1 Ilanit Stein 2016-03-01 13:58:57 UTC
Created attachment 1131945 [details]
Update guaranteed mem to 3047M, then restart

This engine.log contain only the relevant part for updating guaranteed memory,
while VM is up, and then VM powered off & started.

Comment 2 Tomas Jelinek 2016-03-01 14:03:46 UTC
This should be solved by https://bugzilla.redhat.com/show_bug.cgi?id=1238742 -> leaving this opened for independent verification.

Comment 3 Red Hat Bugzilla Rules Engine 2016-03-01 14:03:54 UTC
This bug report has Keywords: Regression or TestBlocker.
Since no regressions or test blockers are allowed between releases, it is also being identified as a blocker for this release. Please resolve ASAP.

Comment 4 Ilanit Stein 2016-03-02 08:58:18 UTC
The problem see to be more wide, and not just related to guaranteed memory.
Update of every VM parameter, that require VM restart, in order to be implemented, while VM is up, is not seen after VM restart.

The problem is that next run snapshot is updated with VM parameter new value,
but in the restore snapshot the new value is not set.

Comment 5 Ilanit Stein 2016-03-02 09:29:01 UTC
rhevm 3.6.3.2-0.1 has this bug.

Comment 6 Ilanit Stein 2016-03-02 09:53:18 UTC
latest rhevm 3.5 vt20.5 (rhevm 3.5.8-0.1) do not have this bug.

Comment 7 Arik 2016-03-06 21:12:20 UTC
As per Ilanit's request, describing the reproduction steps for a related bug that reproduced on 3.5:
1. Run VM
2. Edit the VM while it is running and change it to stateless (confirm that this change will be applied on next run)
3. While the VM is still running, edit the VM again and change its name
-> you will get an error that the creation-date of the VM is changed

Comment 8 Tomas Jelinek 2016-03-07 13:08:07 UTC
all patches merged, moving to modified

Comment 9 Tomas Jelinek 2016-03-08 08:31:52 UTC
Please note that the part described in Comment 7 has been split of this bug since it is not that urgent and have been postponed to 3.6.5: https://bugzilla.redhat.com/show_bug.cgi?id=1315603

Comment 10 Ilanit Stein 2016-03-08 12:44:01 UTC
I've checked the flow in comment #7 on rhevm 3.5 vt20.5 
(rhevm ger Version: 3.5.8-0.1.el6ev)

Indeed, there is the additional parameter, creation-date, that exist on the changed items list, though it was not changed (we have a bug for that - bz 1238742
but after VM restart, the VM is marked as stateless, meaning the restore snapshot does work.

In the description of this bug, on rhevm 3.6, the restore snapshot (after VM power cycle) do not contain the changes made in Edit VM, while it was running.

Therefore, I see it that the behavior is different between rhevm 3.5 and rhevm 3.6

Comment 11 Michal Skrivanek 2016-03-14 07:38:34 UTC
Shmuel, Roy, referring to patch 54280 - shouldn't cpuProfileId be added to the OVF? How does it behave when you take the snapshot, change the profile and then try to restore?

Comment 12 Shmuel Melamud 2016-03-14 12:31:54 UTC
We discussed this with Arik and decided that cpuProfileId shouldn't be part of the snapshot. It is not part of VM's state and references CPU profile which is external to the VM.

Roy, what do you think?

Comment 13 Michal Skrivanek 2016-03-15 07:17:17 UTC
I would agree, but I also think that then it should not actually be configurable form within the Edit VM dialog, but rather elsewhere (e.g. like network details in a separate subtab)
Maybe too big change for now, but it would be make more sense.

Comment 14 Tomas Jelinek 2016-03-17 13:21:13 UTC
*** Bug 1317657 has been marked as a duplicate of this bug. ***

Comment 15 Michal Skrivanek 2016-03-17 13:46:22 UTC
fails on edit VM in latest build, reopening

Comment 16 meital avital 2016-03-17 19:03:25 UTC
Try to verify on version: 3.6.4-0.1.el6

Edit VM failed, Can't update VM parameters, Please see log attached 


2016-03-17 14:38:50,252 WARN  [org.ovirt.engine.core.utils.ObjectIdentityChecker] (org.ovirt.thread.pool-6-thread-3) [792e92a7] Field 'clusterCompatibilityVersionOrigin' can not be updated when status is 'Down'
2:51 2016-03-17 14:38:50,252 WARN  [org.ovirt.engine.core.utils.ObjectIdentityChecker] (org.ovirt.thread.pool-6-thread-3) [792e92a7] ObjectIdentityChecker.IsUpdateValid:: Not updatable field 'clusterCompatibilityVersionOrigin' was updated
2:51 2016-03-17 14:38:50,252 WARN  [org.ovirt.engine.core.bll.UpdateVmCommand] (org.ovirt.thread.pool-6-thread-3) [792e92a7] CanDoAction of action 'UpdateVm' failed for user SYSTEM. Reasons: VAR__ACTION__UPDATE,VAR__TYPE__VM,VM_CANNOT_UPDATE_ILLEGAL_FIELD

Comment 17 meital avital 2016-03-17 19:05:43 UTC
Created attachment 1137483 [details]
Engine log

Comment 18 Red Hat Bugzilla Rules Engine 2016-03-17 22:54:05 UTC
Target release should be placed once a package build is known to fix a issue. Since this bug is not modified, the target version has been reset. Please use target milestone to plan a fix for a oVirt release.

Comment 19 Tomas Jelinek 2016-03-21 07:56:54 UTC
*** Bug 1319463 has been marked as a duplicate of this bug. ***

Comment 20 Tomas Jelinek 2016-03-21 07:59:46 UTC
*** Bug 1319491 has been marked as a duplicate of this bug. ***

Comment 21 Yaniv Lavi 2016-03-21 12:53:48 UTC
*** Bug 1319480 has been marked as a duplicate of this bug. ***

Comment 22 Tomas Jelinek 2016-03-23 11:17:04 UTC
*** Bug 1319339 has been marked as a duplicate of this bug. ***

Comment 23 Michal Skrivanek 2016-03-24 09:28:29 UTC
note a spin-off bug 1320879 for stateless VMs with disks

Comment 24 meital avital 2016-03-24 10:57:54 UTC
Verified on version: 3.6.4.1-0.1.el6

I checked several parameters like guaranteed memory, graphics protocol, number of Monitors, etc. On several VM (rhel,windows).

It seems like it works good.

I found one issue with stateless VM - https://bugzilla.redhat.com/show_bug.cgi?id=1320879

Comment 25 Michal Skrivanek 2016-03-25 05:52:21 UTC
*** Bug 1321187 has been marked as a duplicate of this bug. ***