yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #27484
[Bug 1416554] [NEW] l3 prevent port deletion doesn't handle missing ports
Public bug reported:
The l3 code to check to see if a port can be deleted does not handle the
case where the port id it is passed does not refer to a port that still
exists. This throws an exception and makes the API behavior inconsistent
when two concurrent requests come in to delete the same port.[1] This is
inconsistent because if the port is concurrently deleted after the l3
check is done but before the delete attempt is made, no exception will
be raised.[2]
1. This happens frequently when horizon deletes the subnet and immediately deletes the network afterwards. The dhcp agent will delete it's port on the subnet cleanup and may rip the port right before the delete_network call does it's auto port cleanup. The auto port cleanup will then hit a portnotfound exception which goes uncaught.
2. https://github.com/openstack/neutron/blob/6a797f354eb4ba936b80603f7cc01a2fe80446fd/neutron/plugins/ml2/plugin.py#L1113
** Affects: neutron
Importance: Undecided
Assignee: Kevin Benton (kevinbenton)
Status: In Progress
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1416554
Title:
l3 prevent port deletion doesn't handle missing ports
Status in OpenStack Neutron (virtual network service):
In Progress
Bug description:
The l3 code to check to see if a port can be deleted does not handle
the case where the port id it is passed does not refer to a port that
still exists. This throws an exception and makes the API behavior
inconsistent when two concurrent requests come in to delete the same
port.[1] This is inconsistent because if the port is concurrently
deleted after the l3 check is done but before the delete attempt is
made, no exception will be raised.[2]
1. This happens frequently when horizon deletes the subnet and immediately deletes the network afterwards. The dhcp agent will delete it's port on the subnet cleanup and may rip the port right before the delete_network call does it's auto port cleanup. The auto port cleanup will then hit a portnotfound exception which goes uncaught.
2. https://github.com/openstack/neutron/blob/6a797f354eb4ba936b80603f7cc01a2fe80446fd/neutron/plugins/ml2/plugin.py#L1113
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1416554/+subscriptions
Follow ups
References