Retry port provisioning for "nova:xxx" device_owner ports only

Bug #1991092 reported by Rodolfo Alonso
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Fix Released
Medium
Rodolfo Alonso

Bug Description

Since [1] (up to Wallaby), the "_port_provisioned" method retries the port provisioning if the port is unbound. This feature [2] was meant to be implemented for VM ports, that could be affected by the race condition during the live-migration, as described in [2]. Any other port should be excluded from this active retry.

Also there are some ports, like the router ports in OVN, that are never bound to a host given their decentralized nature.

[1]https://review.opendev.org/q/I50091c84e67c172c94ce9140f23235421599185c
[2]https://bugs.launchpad.net/neutron/+bug/1988199

Changed in neutron:
assignee: nobody → Rodolfo Alonso (rodolfo-alonso-hernandez)
Changed in neutron:
importance: Undecided → Medium
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (master)

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/neutron/+/859645

Changed in neutron:
status: New → In Progress
summary: - Do not retry port provisioning for "network", "neutron" and "baremetal"
- device_owner ports
+ Retry port provisioning for "nova:xxx" device_owner ports
summary: - Retry port provisioning for "nova:xxx" device_owner ports
+ Retry port provisioning for "nova:xxx" device_owner ports only
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.opendev.org/c/openstack/neutron/+/859645
Committed: https://opendev.org/openstack/neutron/commit/21491efd9f8ce6df98cb58c26da7896d75cb4a8b
Submitter: "Zuul (22348)"
Branch: master

commit 21491efd9f8ce6df98cb58c26da7896d75cb4a8b
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Wed Sep 28 18:00:25 2022 +0200

    Port provisioning should retry only for VM ports

    The port provisioning method ``Ml2Plugin._port_provisioned`` creates
    an active wait to provision a port if the port is unbound since [1].
    But this active wait should consider only VM ports in the case of
    live migration, as described in the LP bug [2]. This wait should
    not consider auxiliary Neutron ports or baremetal ports (we don't
    live-migrate then).

    [1]https://review.opendev.org/c/openstack/neutron/+/855257
    [2]https://bugs.launchpad.net/neutron/+bug/1988199

    Closes-Bug: #1991092
    Change-Id: Ic8891e2deef4bb5e72cf7d7f37b043e936adbc00

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

Fix proposed to branch: stable/zed
Review: https://review.opendev.org/c/openstack/neutron/+/859914

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

Reviewed: https://review.opendev.org/c/openstack/neutron/+/859914
Committed: https://opendev.org/openstack/neutron/commit/402cfed400fe7f5b8cb6e69540785759a9000fbe
Submitter: "Zuul (22348)"
Branch: stable/zed

commit 402cfed400fe7f5b8cb6e69540785759a9000fbe
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Wed Sep 28 18:00:25 2022 +0200

    Port provisioning should retry only for VM ports

    The port provisioning method ``Ml2Plugin._port_provisioned`` creates
    an active wait to provision a port if the port is unbound since [1].
    But this active wait should consider only VM ports in the case of
    live migration, as described in the LP bug [2]. This wait should
    not consider auxiliary Neutron ports or baremetal ports (we don't
    live-migrate then).

    [1]https://review.opendev.org/c/openstack/neutron/+/855257
    [2]https://bugs.launchpad.net/neutron/+bug/1988199

    Closes-Bug: #1991092
    Change-Id: Ic8891e2deef4bb5e72cf7d7f37b043e936adbc00
    (cherry picked from commit 21491efd9f8ce6df98cb58c26da7896d75cb4a8b)

tags: added: in-stable-zed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (stable/yoga)

Fix proposed to branch: stable/yoga
Review: https://review.opendev.org/c/openstack/neutron/+/863279

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (stable/xena)

Fix proposed to branch: stable/xena
Review: https://review.opendev.org/c/openstack/neutron/+/863619

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (stable/wallaby)

Fix proposed to branch: stable/wallaby
Review: https://review.opendev.org/c/openstack/neutron/+/863620

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

Reviewed: https://review.opendev.org/c/openstack/neutron/+/863279
Committed: https://opendev.org/openstack/neutron/commit/ec234e64cdb7a282bc66e5497096c5e83bec0a93
Submitter: "Zuul (22348)"
Branch: stable/yoga

commit ec234e64cdb7a282bc66e5497096c5e83bec0a93
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Wed Sep 28 18:00:25 2022 +0200

    Port provisioning should retry only for VM ports

    The port provisioning method ``Ml2Plugin._port_provisioned`` creates
    an active wait to provision a port if the port is unbound since [1].
    But this active wait should consider only VM ports in the case of
    live migration, as described in the LP bug [2]. This wait should
    not consider auxiliary Neutron ports or baremetal ports (we don't
    live-migrate then).

    [1]https://review.opendev.org/c/openstack/neutron/+/855257
    [2]https://bugs.launchpad.net/neutron/+bug/1988199

    Closes-Bug: #1991092
    Change-Id: Ic8891e2deef4bb5e72cf7d7f37b043e936adbc00
    (cherry picked from commit 21491efd9f8ce6df98cb58c26da7896d75cb4a8b)

tags: added: in-stable-yoga
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (stable/xena)

Reviewed: https://review.opendev.org/c/openstack/neutron/+/863619
Committed: https://opendev.org/openstack/neutron/commit/a2df23ac90dda51869f24c51b30b22ae4d61c229
Submitter: "Zuul (22348)"
Branch: stable/xena

commit a2df23ac90dda51869f24c51b30b22ae4d61c229
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Wed Sep 28 18:00:25 2022 +0200

    Port provisioning should retry only for VM ports

    The port provisioning method ``Ml2Plugin._port_provisioned`` creates
    an active wait to provision a port if the port is unbound since [1].
    But this active wait should consider only VM ports in the case of
    live migration, as described in the LP bug [2]. This wait should
    not consider auxiliary Neutron ports or baremetal ports (we don't
    live-migrate then).

    [1]https://review.opendev.org/c/openstack/neutron/+/855257
    [2]https://bugs.launchpad.net/neutron/+bug/1988199

    Closes-Bug: #1991092
    Change-Id: Ic8891e2deef4bb5e72cf7d7f37b043e936adbc00
    (cherry picked from commit 21491efd9f8ce6df98cb58c26da7896d75cb4a8b)

tags: added: in-stable-xena
tags: added: in-stable-wallaby
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (stable/wallaby)

Reviewed: https://review.opendev.org/c/openstack/neutron/+/863620
Committed: https://opendev.org/openstack/neutron/commit/5b1379391110756cbefe942d361da7438a9aa484
Submitter: "Zuul (22348)"
Branch: stable/wallaby

commit 5b1379391110756cbefe942d361da7438a9aa484
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Wed Sep 28 18:00:25 2022 +0200

    Port provisioning should retry only for VM ports

    The port provisioning method ``Ml2Plugin._port_provisioned`` creates
    an active wait to provision a port if the port is unbound since [1].
    But this active wait should consider only VM ports in the case of
    live migration, as described in the LP bug [2]. This wait should
    not consider auxiliary Neutron ports or baremetal ports (we don't
    live-migrate then).

    [1]https://review.opendev.org/c/openstack/neutron/+/855257
    [2]https://bugs.launchpad.net/neutron/+bug/1988199

    Closes-Bug: #1991092
    Change-Id: Ic8891e2deef4bb5e72cf7d7f37b043e936adbc00
    (cherry picked from commit 21491efd9f8ce6df98cb58c26da7896d75cb4a8b)

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/neutron 19.5.0

This issue was fixed in the openstack/neutron 19.5.0 release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/neutron 22.0.0.0rc1

This issue was fixed in the openstack/neutron 22.0.0.0rc1 release candidate.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/neutron 20.3.0

This issue was fixed in the openstack/neutron 20.3.0 release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/neutron 21.1.0

This issue was fixed in the openstack/neutron 21.1.0 release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/neutron wallaby-eom

This issue was fixed in the openstack/neutron wallaby-eom release.

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.