Fix deletion of ports on a pool
We should ensure the ports pools dict that is being interated do not change over time, causing the deletion of the ports to fail. A dict copy is made to avoid this. Change-Id: Ibf0662f71c3837f97c2e9ce815a48a0955c50e89 Closes-bug: 1853281
This commit is contained in:
parent
28b27c5de2
commit
1067b9bf3e
|
@ -653,7 +653,8 @@ class NeutronVIFPool(BaseVIFPool):
|
|||
# on the available_ports_pools dict. The next call forces it to be on
|
||||
# that dict before cleaning it up
|
||||
self._trigger_return_to_pool()
|
||||
for pool_key, ports in self._available_ports_pools.items():
|
||||
available_ports_pools = self._available_ports_pools.copy()
|
||||
for pool_key, ports in available_ports_pools.items():
|
||||
if self._get_pool_key_net(pool_key) != net_id:
|
||||
continue
|
||||
ports_id = []
|
||||
|
@ -1014,7 +1015,8 @@ class NestedVIFPool(BaseVIFPool):
|
|||
# on the available_ports_pools dict. The next call forces it to be on
|
||||
# that dict before cleaning it up
|
||||
self._trigger_return_to_pool()
|
||||
for pool_key, ports in self._available_ports_pools.items():
|
||||
available_ports_pools = self._available_ports_pools.copy()
|
||||
for pool_key, ports in available_ports_pools.items():
|
||||
if self._get_pool_key_net(pool_key) != net_id:
|
||||
continue
|
||||
trunk_id = self._get_trunk_id(neutron, pool_key)
|
||||
|
|
Loading…
Reference in New Issue