Strange we haven't seen this before, thanks for filing the bug.
I think doing something like you propose would work, and it shouldn't need the copy()
while True: to_reload = self._network_bulk_allocations self._network_bulk_allocations = {} for network_id in to_reload: network = self.cache.get_network_by_id(network_id) self.call_driver('bulk_reload_allocations', network) eventlet.greenthread.sleep(self.conf.bulk_reload_interval)
Strange we haven't seen this before, thanks for filing the bug.
I think doing something like you propose would work, and it shouldn't need the copy()
while True: bulk_allocation s _network_ bulk_allocation s = {} get_network_ by_id(network_ id)
self.call_ driver( 'bulk_reload_ allocations' , network) greenthread. sleep(self. conf.bulk_ reload_ interval)
to_reload = self._network_
self.
for network_id in to_reload:
network = self.cache.
eventlet.