neutron/neutron/tests/unit
Rodolfo Alonso Hernandez cc9b849bf3 Improve "get_devices_with_ip" performance
As reported in LP#1896734, there is a limit in the size of information
that can be transmitted in one single message between an application
and the privsep daemon. The read socket buffer is limited in size;
a message exceeding this size will generate an exception.

In order to limit the amount of information to be sent, this patch
improves the performance of "get_devices_with_ip". In the previous
implementation, the whole list of network devices from a namespace
was retrieved. In some environments, the list of devices could be
so big that the list returned by "privileged.get_link_devices" can
exceed the read buffer size (as reported in the LP bug when the
OVS agent tries to retrieve the list of IP addresses in the system).

Now the function calls "privileged.get_ip_addresses", that returns
a much smaller list. This patch is also reducing the number of system
calls to just one; the previous implementation was retrieving first
the devices link information list (that method was returning a much
bigger blob) and then, per device, retrieving the IP address
information.

Conflicts:
    neutron/tests/functional/agent/linux/test_ip_lib.py

Change-Id: I97ada62484023b9833ed12afd68eb4c8d337fd1f
Related-Bug: #1896734
(cherry picked from commit a6cdf273c0)
2021-03-02 09:44:53 +00:00
..
agent Improve "get_devices_with_ip" performance 2021-03-02 09:44:53 +00:00
api Process DHCP events in order if related 2021-02-10 08:52:47 +00:00
cmd Remove Neutron LBaaS 2019-09-20 07:46:06 +00:00
common Merge "Make NeutronOvsdbIdl singleton" into stable/train 2020-11-03 11:16:12 +00:00
conf/agent Agent common config 2017-03-15 09:52:18 -06:00
core_extensions remove neutron.common.exceptions 2019-02-01 14:35:00 -07:00
db Don't try to create default SG when security groups are disabled 2021-02-08 10:32:57 +00:00
debug Remove deprecated 'external_network_bridge' option 2019-03-09 22:07:38 +00:00
extensions Improve the CIDRs overlap check method for router add interface 2021-01-11 09:02:04 +00:00
hacking remove string use of neutron.common.rpc 2019-02-08 09:40:39 -07:00
ipam Start enforcing E125 flake8 directive 2019-07-19 23:39:41 -04:00
notifiers Add config option ``http_retries`` 2020-07-09 10:11:43 +00:00
objects Auto-delete dhcp ports on segment delete 2020-07-13 12:43:04 +02:00
pecan_wsgi Removing deprecated module neutron.api.versions 2018-03-28 14:15:50 +07:00
plugins Merge "Fix removal of dvr-src mac flows when non-gateway port on router is deleted" into stable/train 2021-01-21 19:44:55 +00:00
privileged Use pyroute2 for SRIOV VF commands 2020-06-03 11:05:20 +00:00
quota use get reader/writer session from neutron-lib 2018-07-06 14:43:31 -06:00
scheduler DVR: Remove control plane arp updates for DVR 2020-06-25 10:15:46 +00:00
services Fix update of trunk subports during live migration 2021-02-11 08:58:44 +00:00
tests Start enforcing E125 flake8 directive 2019-07-19 23:39:41 -04:00
__init__.py Don't set use_stderr to False for tests 2017-04-15 01:41:29 +00:00
_test_extension_portbindings.py Remove the unit test 'test_ports_vnic_type_list' 2018-06-15 15:12:10 +00:00
dummy_plugin.py Remove Neutron LBaaS 2019-09-20 07:46:06 +00:00
extension_stubs.py Consume ServicePluginBase from neutron-lib 2017-03-17 12:06:57 -06:00
test_auth.py Fix context deprecation warnings 2018-02-13 15:02:49 -05:00
test_manager.py Remove Neutron LBaaS 2019-09-20 07:46:06 +00:00
test_neutron_plugin_base_v2.py Add unit test to validate non DB base core plugin can be loaded 2017-11-15 21:21:35 +00:00
test_opts.py Fix the sriov agent config group name 2016-05-05 16:16:08 +08:00
test_policy.py Fix handling of network:shared field in policy module 2019-05-07 11:31:25 +02:00
test_service.py fix test nit 2019-08-04 12:31:46 +08:00
test_worker.py Move AgentStatusCheckWorker to PeriodicWorker 2016-11-17 15:31:19 -08:00
test_wsgi.py Start enforcing E125 flake8 directive 2019-07-19 23:39:41 -04:00
testlib_api.py use SqlFixture and StaticSqlFixture from neutron-lib 2019-07-08 11:26:34 -06:00