BigSwitch: Semaphore on port status update
Adds a semaphore to the _set_port_status function used by the Big Switch ML2 driver and plugin. Without it, the async threads are susceptible to deadlocking and causing the known eventlet/mysql timeout exception. Closes-Bug: #1300607 Change-Id: Ie89213a0bef37f9e7a30945df39c0f1b87a33b82
This commit is contained in:
parent
271fde0e31
commit
65f973331c
@ -436,6 +436,8 @@ class NeutronRestProxyV2Base(db_base_plugin_v2.NeutronDbPluginV2,
|
||||
# would have deleted an non-existent port.
|
||||
self.servers.rest_delete_port(tenant_id, net_id, port['id'])
|
||||
|
||||
# NOTE(kevinbenton): workaround for eventlet/mysql deadlock
|
||||
@utils.synchronized('bsn-port-barrier')
|
||||
def _set_port_status(self, port_id, status):
|
||||
session = db.get_session()
|
||||
try:
|
||||
|
Loading…
x
Reference in New Issue
Block a user