Prefetch data in resource_get_by_name_and_stack
This loads resource and resource data in a single query, which means one less sql query per stack resource in a call to describe_stack_resource. Change-Id: Ic2e1ab68cf651f290be75206fd5c0c841de4ef82 Related-Bug: #1306743
This commit is contained in:
parent
9bd4f3fcc5
commit
7678f0c29c
|
@ -18,6 +18,7 @@ import sys
|
|||
|
||||
from oslo.config import cfg
|
||||
import sqlalchemy
|
||||
from sqlalchemy import orm
|
||||
from sqlalchemy.orm.session import Session
|
||||
|
||||
from heat.common import crypt
|
||||
|
@ -112,7 +113,8 @@ def resource_get(context, resource_id):
|
|||
def resource_get_by_name_and_stack(context, resource_name, stack_id):
|
||||
result = model_query(context, models.Resource).\
|
||||
filter_by(name=resource_name).\
|
||||
filter_by(stack_id=stack_id).first()
|
||||
filter_by(stack_id=stack_id).\
|
||||
options(orm.joinedload("data")).first()
|
||||
|
||||
return result
|
||||
|
||||
|
|
Loading…
Reference in New Issue