← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1990561] [NEW] Network filtering by provider attributes has a race condition with network removal

 

Public bug reported:

I ran into a problem when the list of networks filtered by segment ID does not match the expected list.
An important condition is the parallel removal of another network.

Here is a demo:

Console 1:
$ while :; do openstack network create test-net --provider-segment 200 --provider-network-type vxlan >/dev/null; openstack network delete test-net; done

Console 2:
$ for i in {0..1000}; do net=$(openstack network list --provider-segment 100); [[ -n "${net}" ]] && echo "${net}" && echo "Iter=$i" && break; done
+--------------------------------------+----------+---------+
| ID                                   | Name     | Subnets |
+--------------------------------------+----------+---------+
| 64ccd339-c669-4b8b-9d11-758e98295955 | test-net |         |
+--------------------------------------+----------+---------+
Iter=81
$


A log file has a message:

2022-09-22 20:13:15.706 25 DEBUG neutron.plugins.ml2.managers [None
req-4c379e00-4794-4625-afe7-64643aa801cf
4f5e975fb1044192a4930fd01ca7d9d7 1958e62e718f468299ae302a12364c08 -
default default] Network 64ccd339-c669-4b8b-9d11-758e98295955 has no
segments extend_network_with_provider_segments
/usr/lib64/python3.6/site-packages/neutron/plugins/ml2/managers.py:169


So, it looks like there is a race condition.
OS version: Xena

** Affects: neutron
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1990561

Title:
  Network filtering by provider attributes has a race condition with
  network removal

Status in neutron:
  New

Bug description:
  I ran into a problem when the list of networks filtered by segment ID does not match the expected list.
  An important condition is the parallel removal of another network.

  Here is a demo:

  Console 1:
  $ while :; do openstack network create test-net --provider-segment 200 --provider-network-type vxlan >/dev/null; openstack network delete test-net; done

  Console 2:
  $ for i in {0..1000}; do net=$(openstack network list --provider-segment 100); [[ -n "${net}" ]] && echo "${net}" && echo "Iter=$i" && break; done
  +--------------------------------------+----------+---------+
  | ID                                   | Name     | Subnets |
  +--------------------------------------+----------+---------+
  | 64ccd339-c669-4b8b-9d11-758e98295955 | test-net |         |
  +--------------------------------------+----------+---------+
  Iter=81
  $

  
  A log file has a message:

  2022-09-22 20:13:15.706 25 DEBUG neutron.plugins.ml2.managers [None
  req-4c379e00-4794-4625-afe7-64643aa801cf
  4f5e975fb1044192a4930fd01ca7d9d7 1958e62e718f468299ae302a12364c08 -
  default default] Network 64ccd339-c669-4b8b-9d11-758e98295955 has no
  segments extend_network_with_provider_segments
  /usr/lib64/python3.6/site-packages/neutron/plugins/ml2/managers.py:169

  
  So, it looks like there is a race condition.
  OS version: Xena

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1990561/+subscriptions