]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commit
linuxbridge-agent: process port updates in the main loop
authorDarragh O'Reilly <dara2002-openstack@yahoo.com>
Mon, 16 Dec 2013 14:03:37 +0000 (14:03 +0000)
committerDarragh O'Reilly <dara2002-openstack@yahoo.com>
Tue, 17 Jun 2014 17:33:34 +0000 (17:33 +0000)
commitece14aab5836949faa5be6fb872840367423a57c
treea9d3f3e9017e6483a7ec9940f4592b0b996cde58
parent16eb9875583577d0a2694dc7717c37fefea50bda
linuxbridge-agent: process port updates in the main loop

This patch changes the way the linuxbridge agent processes port update
notifications. It does the same for the lb-agent as was done for the
ovs-agent in I219c6bdf63b0b5e945b655677f9e28fa591f03cd.
Now the RPC call just adds the updated tap device name to a set of
updated devices, and the actual processing is done in the main RPC loop.
This should solve the problems were port_update RPCs were competing
with the main loop/greenthread and with each other to do the same task
- like adding a tap or interface to a bridge - which lead to races and
was inefficient. Now repeated port_update notifications received within
a single main loop iteration will be coalesced and processed only once.

Closes-Bug: 1256950
Change-Id: I7fd48542f12b39ffc1346d1a6c9a387ecda6d812
neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py
neutron/tests/unit/linuxbridge/test_lb_neutron_agent.py