Comment 14 for bug 1732947

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to nova (stable/ocata)

Reviewed: https://review.openstack.org/525664
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=fe5e3e7e61d879f7a28eb177e4bdbc7ead3ae4ac
Submitter: Zuul
Branch: stable/ocata

commit fe5e3e7e61d879f7a28eb177e4bdbc7ead3ae4ac
Author: Matt Riedemann <email address hidden>
Date: Fri Nov 17 16:53:39 2017 -0500

    Add regression test for rebuilding a volume-backed server

    Commit 984dd8ad6add4523d93c7ce5a666a32233e02e34 makes rebuild
    check to see if the user is rebuilding an instance with a new
    image and if so, to run the scheduler filters again since the
    new image might not work with the current host for the instance,
    and we rebuild to the same host that the instance is already
    running on.

    The problem is the instance.image_ref attribute is not set for
    a volume-backed (boot-from-volume) instance, so the conditional
    in the rebuild() method is always True, which means we always run
    through the scheduler for volume-backed instances during rebuild,
    even if the image in the root disk isn't changing.

    This adds a functional regression test to recreate the bug.

    Conflicts:
          nova/tests/fixtures.py

    NOTE(mriedem): The CinderFixture conflict is due to not having
    1928ec5606491de95abba8791b1d7b888690dd3c in Ocata. However, this
    change needs the part of that patch to the CinderFixture to work,
    so it's added here.

    NOTE(mriedem): The functional test needed to change slightly to
    use the PlacementFixture and disable the DiskFilter.

    Change-Id: If79c554b46c44a7f70f8367426e7da362d7234c8
    Related-Bug: #1732947
    (cherry picked from commit a4eebd5de7ef4b63082536718ba7b993a66d47e7)
    (cherry picked from commit c7991653a4e7cbb86656e6ba7579a86236801567)