← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1905726] Re: Qos plugin performs too many queries

 

** Changed in: neutron
       Status: Fix Committed => Fix Released

-- 
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:
  Fix Released

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