yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #68296
[Bug 1721423] Re: [Performance] Bad performance on instances list panel
Reviewed: https://review.openstack.org/509676
Committed: https://git.openstack.org/cgit/openstack/horizon/commit/?id=fa2e8327b9d0a10f29a4fbe3094a4533914b8ce3
Submitter: Jenkins
Branch: master
commit fa2e8327b9d0a10f29a4fbe3094a4533914b8ce3
Author: Feilong Wang <flwang@xxxxxxxxxxxxxxx>
Date: Thu Oct 5 14:37:34 2017 +1300
Add cache for get_microversion() against Nova
Actions "Lock" and "Unlock" of instance on instances table are calling
api.nova.is_feature_available() to check if the feature is supported
by current Nova server. Unfortunately, the function get_microversion()
called by is_feature_available() is not cached, which is causing about
40 unnecesary REST API calls. If the Nova's version is under Mitaka,
it could be even worse, about 80 unnecesary API calls, see
openstack_dashboard/api/nova.py#L60 and
novaclient/v2/versions.py#L47 for more details.
Closes-Bug: #1721423
Change-Id: Ie96b1a35e379d4cf407bfd53b1ee734178f9cb07
** Changed in: horizon
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Dashboard (Horizon).
https://bugs.launchpad.net/bugs/1721423
Title:
[Performance] Bad performance on instances list panel
Status in OpenStack Dashboard (Horizon):
Fix Released
Bug description:
I just found there is no cache for microversion check which may cause
almost 40 unnecessary API calls.
There are two actions for instances table need to check the microversion in allowed() function, see
https://github.com/openstack/horizon/blob/master/openstack_dashboard/dashboards/project/instances/tables.py#L870
but unfortunately, there is no cache for this check, see
https://github.com/openstack/horizon/blob/master/openstack_dashboard/api/nova.py#L60
And function get_microversion(request, feature) is also used by other
functions. Based on my test, after adding cache for this function,
about 3+ seconds are saved.
To manage notifications about this bug go to:
https://bugs.launchpad.net/horizon/+bug/1721423/+subscriptions
References