not sending Nova notification when using neutron API on mod_wsgi

Bug #1970216 reported by Krzysztof Tomaszewski
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Fix Released
High
Krzysztof Tomaszewski

Bug Description

When using Neutron API server with Apache mod_wsgi then
notification to Nova are not always send and lost.

How to reproduce: Ubuntu 20.04; upstream devstack master configured
with Apache mod_wsgi [1]

stack@devstack11:~$ openstack server create --availability-zone nova:devstack11 --net public --key-name test --flavor ds512M --image ubuntu t1
stack@devstack11:~$ openstack port create --net private test_port; openstack server add port t1 test_port

VM get it's port properly:

stack@devstack11:~/devstack$ openstack port show test_port -c id -c device_id
+-----------+--------------------------------------+
| Field | Value |
+-----------+--------------------------------------+
| device_id | 59d7e21b-7d43-4ee6-a82b-e43d12c6e9ae |
| id | 4ed67e46-535e-4a51-af95-f46497ecfdb4 |
+-----------+--------------------------------------+

stack@devstack11:/usr/lib/cgi-bin/neutron$ sudo virsh domiflist instance-00000015
 Interface Type Source Model MAC
------------------------------------------------------------------
 tapbef7c488-e4 ethernet - virtio fa:16:3e:d1:23:72
 tap4ed67e46-53 ethernet - virtio fa:16:3e:60:3f:1a

but when deleting port from neutron API:

stack@devstack11:~/neutron$ openstack port delete test_port

on libvirt:

stack@devstack11:/usr/lib/cgi-bin/neutron$ sudo virsh domiflist instance-00000015
 Interface Type Source Model MAC
------------------------------------------------------------------
 tapbef7c488-e4 ethernet - virtio fa:16:3e:d1:23:72
 tap4ed67e46-53 ethernet - virtio fa:16:3e:60:3f:1a

and on neutron side:
stack@devstack11:~/devstack$ openstack port show test_port -c id -c device_id
No Port found for test_port

after few tries you can end up with:

stack@devstack11:~/neutron$ openstack port show test_port -c id
No Port found for test_port

and

stack@devstack11:/usr/lib/cgi-bin/neutron$ sudo virsh domiflist instance-00000015
 Interface Type Source Model MAC
------------------------------------------------------------------
 tapbef7c488-e4 ethernet - virtio fa:16:3e:d1:23:72
 tap4ed67e46-53 ethernet - virtio fa:16:3e:60:3f:1a
 tap2b20446c-3d ethernet - virtio fa:16:3e:22:6c:19
 tapea396111-d3 ethernet - virtio fa:16:3e:c3:38:4a

[1] https://docs.openstack.org/neutron/yoga/admin/config-wsgi.html#neutron-api-behind-mod-wsgi

description: updated
summary: - not sending Nova notification when using neutron API on WSGI
+ not sending Nova notification when using neutron API on mod_wsgi
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/+/839218

Changed in neutron:
status: New → In Progress
Changed in neutron:
assignee: nobody → Krzysztof Tomaszewski (labedz)
Changed in neutron:
importance: Undecided → High
tags: added: api
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/+/840424

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/+/840425

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/+/840426

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

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

commit dcbc4beb9e8e9b2695fa76015a33f651f904f280
Author: labedz <email address hidden>
Date: Mon Apr 25 09:35:47 2022 +0000

    Use monkey_patch for neutron API server.

    Neutron API server was not using eventlet monkey patch
    thus eventlet threads couldn't be properly yielded.

    This patch set API neutron server like other monkey patched
    neutron services: neutron-server and neutron-rpc-server.

    NOTE: this change needs apache service restart. Apache
    mod_wsgi auto reload can lead to SSL RecursionError.

    Co-Authored-By: Szymon Wroblewski <email address hidden>
    Closes-Bug: 1970216
    Change-Id: Ib62c049cc521a548ab7e7e9584b19bdaa67b1c9d

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

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

commit 609508b7b946428c87f602258a6692a3b43076dc
Author: labedz <email address hidden>
Date: Mon Apr 25 09:35:47 2022 +0000

    Use monkey_patch for neutron API server.

    Neutron API server was not using eventlet monkey patch
    thus eventlet threads couldn't be properly yielded.

    This patch set API neutron server like other monkey patched
    neutron services: neutron-server and neutron-rpc-server.

    NOTE: this change needs apache service restart. Apache
    mod_wsgi auto reload can lead to SSL RecursionError.

    Co-Authored-By: Szymon Wroblewski <email address hidden>
    Closes-Bug: 1970216
    Change-Id: Ib62c049cc521a548ab7e7e9584b19bdaa67b1c9d
    (cherry picked from commit dcbc4beb9e8e9b2695fa76015a33f651f904f280)

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

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

commit 985257e1a3ae4673dd2ef49858131cbd0fde70b7
Author: labedz <email address hidden>
Date: Mon Apr 25 09:35:47 2022 +0000

    Use monkey_patch for neutron API server.

    Neutron API server was not using eventlet monkey patch
    thus eventlet threads couldn't be properly yielded.

    This patch set API neutron server like other monkey patched
    neutron services: neutron-server and neutron-rpc-server.

    NOTE: this change needs apache service restart. Apache
    mod_wsgi auto reload can lead to SSL RecursionError.

    Co-Authored-By: Szymon Wroblewski <email address hidden>
    Closes-Bug: 1970216
    Change-Id: Ib62c049cc521a548ab7e7e9584b19bdaa67b1c9d
    (cherry picked from commit dcbc4beb9e8e9b2695fa76015a33f651f904f280)

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/+/840426
Committed: https://opendev.org/openstack/neutron/commit/0e3cf060eea1ca7f66b27289fbd89f717db76ce1
Submitter: "Zuul (22348)"
Branch: stable/wallaby

commit 0e3cf060eea1ca7f66b27289fbd89f717db76ce1
Author: labedz <email address hidden>
Date: Mon Apr 25 09:35:47 2022 +0000

    Use monkey_patch for neutron API server.

    Neutron API server was not using eventlet monkey patch
    thus eventlet threads couldn't be properly yielded.

    This patch set API neutron server like other monkey patched
    neutron services: neutron-server and neutron-rpc-server.

    NOTE: this change needs apache service restart. Apache
    mod_wsgi auto reload can lead to SSL RecursionError.

    Co-Authored-By: Szymon Wroblewski <email address hidden>
    Closes-Bug: 1970216
    Change-Id: Ib62c049cc521a548ab7e7e9584b19bdaa67b1c9d
    (cherry picked from commit dcbc4beb9e8e9b2695fa76015a33f651f904f280)

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

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

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

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

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

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

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

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

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.