Comment 36 for bug 1888395

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

Reviewed: https://review.opendev.org/c/openstack/nova/+/759153
Committed: https://opendev.org/openstack/nova/commit/5a6fd88f7aaa18b9cbd7ab594b4e1dac0b7d22ca
Submitter: "Zuul (22348)"
Branch: stable/train

commit 5a6fd88f7aaa18b9cbd7ab594b4e1dac0b7d22ca
Author: root <email address hidden>
Date: Sat Jul 18 00:32:54 2020 -0400

    Set migrate_data.vifs only when using multiple port bindings

    In the rocky cycle nova was enhanced to support the multiple
    port binding live migration workflow when neutron supports
    the binding-extended API extension.
    When the migration_data object was extended to support
    multiple port bindings, populating the vifs field was used
    as a sentinel to indicate that the new workflow should
    be used.

    In the train release
    I734cc01dce13f9e75a16639faf890ddb1661b7eb
    (SR-IOV Live migration indirect port support)
    broke the semantics of the migrate_data object by
    unconditionally populating the vifs field

    This change restores the rocky semantics, which are depended
    on by several parts of the code base, by only conditionally
    populating vifs if neutron supports multiple port bindings.

    Changes to patch:
      - unit/virt/libvirt/fakelibvirt.py: Include partial pick from
        change Ia3d7351c1805d98bcb799ab0375673c7f1cb8848 to add the
        jobStats, complete_job and fail_job to fakelibvirt. The full
        change was not cherry-picked as it was part of the numa aware
        live migration feature in Victoria.
      - renamed import of nova.network.neutron to
        nova.network.neutronv2.api
      - mocked nova.virt.libvirt.guest.Guest.get_job_info to return
        fakelibvirt.VIR_DOMAIN_JOB_COMPLETED
      - replaced from urllib import parse as urlparse with
        import six.moves.urllib.parse as urlparse for py2.7

    Conflicts:
        nova/tests/functional/regressions/test_bug_1888395.py
        nova/tests/unit/compute/test_compute.py
        nova/tests/unit/compute/test_compute_mgr.py
        nova/tests/unit/virt/test_virt_drivers.py

    Co-Authored-By: Sean Mooney <email address hidden>
    Change-Id: Ia00277ac8a68a635db85f9e0ce2c6d8df396e0d8
    Closes-Bug: #1888395
    (cherry picked from commit b8f3be6b3c5af91d215b4a0cecb9be098e8d8799)
    (cherry picked from commit afa843c8a7e128489a8245ed7a1b391c022b3305)