← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1830260] [NEW] Inefficient host_status lookup when listing servers with details (regression)

 

Public bug reported:

We have a performance regression since Stein [1] when listing servers
with details concerning the host_status field. The code used to rely on
this method [2] to cache the host status information per host when
iterating over a list of instances but now it fetches it per host per
instance in the view builder [3]. Granted by default policy this would
only affect performance for an admin, but if I'm an admin listing 1000
servers across all tenants using "nova list --all-tenants" (which is
going to use a microversion high enough to hit this) it could be a
noticeable slow down compared to before Stein.

[1] https://review.opendev.org/#/c/584590/
[2] https://github.com/openstack/nova/blob/c7e9e667426a6d88d396a59cb40d30763a3265f9/nova/compute/api.py#L4926
[3] https://github.com/openstack/nova/blob/c7e9e667426a6d88d396a59cb40d30763a3265f9/nova/api/openstack/compute/views/servers.py#L325

** Affects: nova
     Importance: Medium
         Status: Triaged

** Affects: nova/stein
     Importance: Medium
         Status: Triaged


** Tags: performance

** Changed in: nova
       Status: New => Triaged

** Also affects: nova/stein
   Importance: Undecided
       Status: New

** Changed in: nova/stein
       Status: New => Triaged

** Changed in: nova/stein
   Importance: Undecided => High

** Summary changed:

- Inefficient host_status lookup when listing servers with details
+ Inefficient host_status lookup when listing servers with details (regression)

** Changed in: nova/stein
   Importance: High => Medium

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1830260

Title:
  Inefficient host_status lookup when listing servers with details
  (regression)

Status in OpenStack Compute (nova):
  Triaged
Status in OpenStack Compute (nova) stein series:
  Triaged

Bug description:
  We have a performance regression since Stein [1] when listing servers
  with details concerning the host_status field. The code used to rely
  on this method [2] to cache the host status information per host when
  iterating over a list of instances but now it fetches it per host per
  instance in the view builder [3]. Granted by default policy this would
  only affect performance for an admin, but if I'm an admin listing 1000
  servers across all tenants using "nova list --all-tenants" (which is
  going to use a microversion high enough to hit this) it could be a
  noticeable slow down compared to before Stein.

  [1] https://review.opendev.org/#/c/584590/
  [2] https://github.com/openstack/nova/blob/c7e9e667426a6d88d396a59cb40d30763a3265f9/nova/compute/api.py#L4926
  [3] https://github.com/openstack/nova/blob/c7e9e667426a6d88d396a59cb40d30763a3265f9/nova/api/openstack/compute/views/servers.py#L325

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1830260/+subscriptions


Follow ups