yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #84654
[Bug 1905726] Re: Qos plugin performs too many queries
** Also affects: neutron
Importance: Undecided
Status: New
** No longer affects: cinder
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1905726
Title:
Qos plugin performs too many queries
Status in neutron:
New
Bug description:
Whenever retrieving the port list while having the QoS plugin enabled,
Neutron performs about 10 DB queries per port, most of them being QoS
related: http://paste.openstack.org/raw/800461/
For 1000 ports, we end up with 10 000 sequential DB queries. A simple
"neutron port-list" or "nova list" command will exceed 1 minute, which
is likely to hit timeouts.
This seems to be the problem:
https://github.com/openstack/neutron/blob/17.0.0/neutron/db/db_base_plugin_v2.py#L1566-L1570
For each of the retrieved ports, the plugins are then supposed to
provide additional details, so for each port we get a certain number
of extra queries.
One idea would be to add a flag such as 'detailed' or
'include_extensions' to 'get_ports' and then propagate it to
'_make_port_dict' through the 'process_extensions' parameter. Another
idea would be to let the plugins extend the query but that might be
less feasible.
Worth mentioning that there were a couple of commits meant to reduce the number of queries but it's still excessive:
https://review.opendev.org/c/openstack/neutron/+/667998
https://review.opendev.org/c/openstack/neutron/+/667981/
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1905726/+subscriptions