Reviewed: https://review.openstack.org/489633 Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=fc6caeeb5122ad4577ebd98f23309a68b8e9e738 Submitter: Jenkins Branch: master
commit fc6caeeb5122ad4577ebd98f23309a68b8e9e738 Author: Chris Dent <[email protected]> Date: Tue Aug 1 16:07:03 2017 +0100 Update RT aggregate map less frequently The _provider_aggregate_map was being updated every time _ensure_resource_provider was called. This is inefficient as aggregates are not updated that often. This change only updates the aggregate map for any single resource provider if it has not been updated in the last 300 seconds. The handling of the update has been moved out to its own method (instead of two calls in _ensure_resource_provider) so that if we want to move it to the periodic job or something like that, that will be easy. When a resource provider is new to the resource tracker, we always update the aggregate map for that resouce provider uuid. The initial pass of this used a single time for last update, instead of a time per resource provider uuid, but that would lead to some upredictability. The aggregate_refresh_map (which maps rp uuids to last update times) is public so that if we want to make it so the reset() on the compute manager can clear it, we have that option. Closes-Bug: #1708252 Change-Id: Ida7c79a3130ba1c159a37c984d382c789f46e111 ** Changed in: nova Status: In Progress => Fix Released -- 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/1708252 Title: resource tracker updates its map of aggregates too often Status in OpenStack Compute (nova): Fix Released Bug description: As of late in the Pike cycle, the resource tracker updates its map of aggregates associated with the resource provider it knows about everytime it calls `_ensure_resource_provider`. This method is called quite often, increasingly so as we do more stuff with resource providers from both the resource tracker and scheduler (both of which use the report client). This results in a lot of useless work that could create undue load on both client and server. There is a long standing TODO to have some kind of cache or timeout so that we update the aggregate map less often, as updates of those on the placement server side are relatively infrequent. We need to balance between doing the updates too often and there being a gap between when an aggregate change does happen and the map getting updated. To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1708252/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

