Older versions of the Manager set the virtual machine's default time zone to an empty string, but this field is now set to a null value. This update adds a database migration script to handle this change, so users can update the time zone on running virtual machines.
Verified in rhevm-3.2.4-0.44.el6ev.noarch (sf21).
Verification steps:
1) In older RHEVM 3.2 (3.2.0 aka sf17.5 in this case) create new VM with Windows OS type.
2) In DB, simulate the old behavior via seting the time_zone to empty string :
{{{
# psql -U engine engine
engine=> \pset null <NULL>
engine=> UPDATE vm_static SET time_zone = '' where vm_name = 'my-win7-sf17_5';
UPDATE 1
engine=> SELECT vm_guid, vm_name, time_zone from vm_static;
vm_guid | vm_name | time_zone
--------------------------------------+----------------+-----------
00000000-0000-0000-0000-000000000000 | Blank | <NULL>
993f9143-1a45-4f69-a739-34be9f62f049 | my-win7 |
}}}
3) Run the VM in webadmin and try to edit for example the description -> you should get an error pop-up. Stop the VM.
4) Upgrade to RHEVM 3.2.4 (sf21)
5) Repeat step 3 -> now it should be possible to change the description.
6) Check the time_zone value in DB:
{{{
# psql -U engine engine
engine=> \pset null <NULL>
engine=> SELECT vm_guid, vm_name, time_zone from vm_static;
vm_guid | vm_name | time_zone
--------------------------------------+----------------+-----------
00000000-0000-0000-0000-000000000000 | Blank | <NULL>
993f9143-1a45-4f69-a739-34be9f62f049 | my-win7 | <NULL>
}}}
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.
http://rhn.redhat.com/errata/RHBA-2013-1468.html
Verified in rhevm-3.2.4-0.44.el6ev.noarch (sf21). Verification steps: 1) In older RHEVM 3.2 (3.2.0 aka sf17.5 in this case) create new VM with Windows OS type. 2) In DB, simulate the old behavior via seting the time_zone to empty string : {{{ # psql -U engine engine engine=> \pset null <NULL> engine=> UPDATE vm_static SET time_zone = '' where vm_name = 'my-win7-sf17_5'; UPDATE 1 engine=> SELECT vm_guid, vm_name, time_zone from vm_static; vm_guid | vm_name | time_zone --------------------------------------+----------------+----------- 00000000-0000-0000-0000-000000000000 | Blank | <NULL> 993f9143-1a45-4f69-a739-34be9f62f049 | my-win7 | }}} 3) Run the VM in webadmin and try to edit for example the description -> you should get an error pop-up. Stop the VM. 4) Upgrade to RHEVM 3.2.4 (sf21) 5) Repeat step 3 -> now it should be possible to change the description. 6) Check the time_zone value in DB: {{{ # psql -U engine engine engine=> \pset null <NULL> engine=> SELECT vm_guid, vm_name, time_zone from vm_static; vm_guid | vm_name | time_zone --------------------------------------+----------------+----------- 00000000-0000-0000-0000-000000000000 | Blank | <NULL> 993f9143-1a45-4f69-a739-34be9f62f049 | my-win7 | <NULL> }}}