Repeatedly resolving attributes causes high load

Bug #1321970 reported by Steve Baker
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Heat
Fix Released
High
Steve Baker

Bug Description

Some resource attributes make API calls, so a template which calls the same attribute several times results in extra unnecessary requests. For a tripleo scaled overcloud this results in hundreds of unnecessary API calls plus long delays in resource creation and long periods of heat-engine 100% CPU usage.

Changed in heat:
status: New → Triaged
importance: Undecided → High
milestone: none → juno-1
assignee: nobody → Steve Baker (steve-stevebaker)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to heat (master)

Fix proposed to branch: master
Review: https://review.openstack.org/94755

Changed in heat:
status: Triaged → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to heat (master)

Reviewed: https://review.openstack.org/94755
Committed: https://git.openstack.org/cgit/openstack/heat/commit/?id=ab412fee30d83816e38c57c837cf5c046f0790b5
Submitter: Jenkins
Branch: master

commit ab412fee30d83816e38c57c837cf5c046f0790b5
Author: Steve Baker <email address hidden>
Date: Thu May 22 13:24:38 2014 +1200

    Implement caching of resource attributes

    The default caching mode cache_local will return the previously
    resolved value if it is available.

    Whenever any resource changes state, all resource attribute caches
    are cleared just in case the state change has side-effects in
    other resources.

    The caching mode cache_none performs no caching, and is chosen
    for attributes which are one of the following:
    * Derived from any resource's metadata, resource data or resource_id
    * An API call which returns a secret

    Caching currently only exists for the duration of the parser.Stack
    object, but there is future potential for a caching mode which
    caches attributes spanning multiple requests.

    Closes-Bug: #1321970

    Change-Id: I01bf2983b726f0e81a2b8d5be94627353bdeb406

Changed in heat:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
Changed in heat:
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in heat:
milestone: juno-1 → 2014.2
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.