Hyper-V: Nova cold resize / migration fails

Bug #1453835 reported by Claudiu Belu
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
Medium
Claudiu Belu
Kilo
Fix Released
Medium
Claudiu Belu

Bug Description

Commit https://review.openstack.org/#/c/162999/ changed where the Hyper-V VM configuration files are stored. The files are being stored in the same folder as the instance. Performing a cold resize / migration will cause a os.rename call on the instance's folder, which fails as long as there are configuration files used by Hyper-V in that folder, thus resulting in a failed migration and the instance ending up in ERROR state.

Logs: http://paste.openstack.org/show/219887/

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (master)

Fix proposed to branch: master
Review: https://review.openstack.org/181916

Changed in nova:
assignee: nobody → Claudiu Belu (cbelu)
status: New → In Progress
Revision history for this message
John Garbutt (johngarbutt) wrote :

Can we please describe why this error was not caught by the hyper-v CI tests?

Changed in nova:
importance: Undecided → Medium
Revision history for this message
Alessandro Pilotti (alexpilotti) wrote :

The Hyper-V CI uses 2 Hyper-V nodes, so migration worked fine across two nodes. This issue happens when resizing on the same node.

This has been caught by our Kilo release integration tests where we tests all possible configurations and supported OSs (12k+ tempest tests). The issue does not happen on stable/juno, also tested the last time with the 2014.2.3 release.

We discussed to add additional tests in the CI for the single host resize case as this is a potential source of regressions like this one.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/181916
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=acf95831c8550afa3a0e1345d97665063b53acd9
Submitter: Jenkins
Branch: master

commit acf95831c8550afa3a0e1345d97665063b53acd9
Author: Claudiu Belu <email address hidden>
Date: Mon May 11 17:21:58 2015 +0300

    Hyper-V: Fixes cold migration / resize issue

    Commit 3e42c7ae3f7a9353834c8c9c4dc79ee39dd0783b changed where the Hyper-V
    VM configuration files are stored. The files are being stored in the same
    folder as the instance. Performing a cold resize / migration will cause a
    os.rename call on the instance's folder, which fails as long as there are
    configuration files used by Hyper-V in that folder, thus resulting in a
    failed migration and the instance ending up in ERROR state.

    Hyper-V configuration files are stored in a subfolder of the instance's
    folder (e.g.: C:\OpenStack\Instances\instance-000000b6\Virtual Machines).

    This commit makes sure that Hyper-V configuration files are not being
    moved during migration by skipping subfolders in the instance's folder.

    Change-Id: I4874eed7d284fab241e4371e550a88270ca156f1
    Closes-Bug: #1453835

Changed in nova:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (stable/kilo)

Fix proposed to branch: stable/kilo
Review: https://review.openstack.org/186796

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (stable/kilo)

Reviewed: https://review.openstack.org/186796
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=72f7e30575295613fe4113d5df56f0fda8ed97f8
Submitter: Jenkins
Branch: stable/kilo

commit 72f7e30575295613fe4113d5df56f0fda8ed97f8
Author: Claudiu Belu <email address hidden>
Date: Mon May 11 17:21:58 2015 +0300

    Hyper-V: Fixes cold migration / resize issue

    Commit 3e42c7ae3f7a9353834c8c9c4dc79ee39dd0783b changed where the Hyper-V
    VM configuration files are stored. The files are being stored in the same
    folder as the instance. Performing a cold resize / migration will cause a
    os.rename call on the instance's folder, which fails as long as there are
    configuration files used by Hyper-V in that folder, thus resulting in a
    failed migration and the instance ending up in ERROR state.

    Hyper-V configuration files are stored in a subfolder of the instance's
    folder (e.g.: C:\OpenStack\Instances\instance-000000b6\Virtual Machines).

    This commit makes sure that Hyper-V configuration files are not being
    moved during migration by skipping subfolders in the instance's folder.

    Change-Id: I4874eed7d284fab241e4371e550a88270ca156f1
    Closes-Bug: #1453835
    (cherry picked from commit acf95831c8550afa3a0e1345d97665063b53acd9)

Thierry Carrez (ttx)
Changed in nova:
milestone: none → liberty-1
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in nova:
milestone: liberty-1 → 12.0.0
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.