yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #47304
[Bug 1355153] Re: Inefficient implementation of Linuxbridge agent get_bridge_for_tap_device
already closed by
commit 459980f04a62e2ef15a2b8c91ac6c8d6ee484167
Author: Cedric Brandily <zzelle@xxxxxxxxx>
Date: Thu Nov 5 23:40:45 2015 +0100
Move LinuxBridge related features to bridge_lib
This change moves from linuxbridge agent[1] to bridge_lib[2] bridge only
related features and adds functional tests.
** Changed in: neutron
Status: In Progress => Invalid
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1355153
Title:
Inefficient implementation of Linuxbridge agent
get_bridge_for_tap_device
Status in neutron:
Invalid
Bug description:
The implementation of LinuxBridgeManager.get_bridge_for_tap_device
uses an inefficient algorithm of repeatedly listing all bridges and
their interfaces for each call.
At scale, this implementation becomes very inefficient, causing the
agent to become unresponsive in reporting interfaces as up to nova,
leading to instance creation failure due to a timeout in
LibvirtDriver._create_domain_and_network.
This can be replaced with a constant-time implementation using the
fact that the tap device's 'brport' directory contains a 'bridge'
symlink to the bridge device, which carries the bridge name. The same
symlink also exists as 'master' on the same level as 'brport'.
The patch I propose also removes the single use of methods
get_all_neutron_bridges and interface_exists_on_bridge. I left these
methods in as their removal is not necessary for this bugfix.
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1355153/+subscriptions
References