Reduce number of novaclient calls
Currently, each client creates a new session for each call. This fix makes novaclient re-use sessions in the most obvoius cases. Partial-Bug: #1247056 Change-Id: Ie99ecb66304cf40e4f5fdd31fab5162ed11b863e
This commit is contained in:
parent
3cd50fc123
commit
ddc479272f
|
@ -495,7 +495,7 @@ def server_get(request, instance_id):
|
|||
|
||||
def server_list(request, search_opts=None, all_tenants=False):
|
||||
page_size = utils.get_page_size(request)
|
||||
|
||||
c = novaclient(request)
|
||||
paginate = False
|
||||
if search_opts is None:
|
||||
search_opts = {}
|
||||
|
@ -509,7 +509,7 @@ def server_list(request, search_opts=None, all_tenants=False):
|
|||
else:
|
||||
search_opts['project_id'] = request.user.tenant_id
|
||||
servers = [Server(s, request)
|
||||
for s in novaclient(request).servers.list(True, search_opts)]
|
||||
for s in c.servers.list(True, search_opts)]
|
||||
|
||||
has_more_data = False
|
||||
if paginate and len(servers) > page_size:
|
||||
|
@ -684,8 +684,9 @@ def service_list(request):
|
|||
|
||||
def aggregate_list(request):
|
||||
result = []
|
||||
for aggregate in novaclient(request).aggregates.list():
|
||||
result.append(novaclient(request).aggregates.get_details(aggregate.id))
|
||||
c = novaclient(request)
|
||||
for aggregate in c.aggregates.list():
|
||||
result.append(c.aggregates.get_details(aggregate.id))
|
||||
|
||||
return result
|
||||
|
||||
|
|
Loading…
Reference in New Issue