From ef66e75b77de81c6b5bd6c2ad7b380d033efbc21 Mon Sep 17 00:00:00 2001 From: licanwei Date: Fri, 2 Nov 2018 11:58:40 +0800 Subject: [PATCH] optimize get_instances_by_node We can set host filed in search_opts. refer to: https://developer.openstack.org/api-ref/compute/?expanded=list-servers-detail#list-servers Change-Id: I36b27167d7223f3bf6bb05995210af41ad01fc6d --- watcher/common/nova_helper.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/watcher/common/nova_helper.py b/watcher/common/nova_helper.py index ca6408b92..18701f7c1 100644 --- a/watcher/common/nova_helper.py +++ b/watcher/common/nova_helper.py @@ -705,9 +705,9 @@ class NovaHelper(object): def get_instances_by_node(self, host): return [instance for instance in - self.nova.servers.list(search_opts={"all_tenants": True}, - limit=-1) - if self.get_hostname(instance) == host] + self.nova.servers.list(search_opts={"all_tenants": True, + "host": host}, + limit=-1)] def get_hostname(self, instance): return str(getattr(instance, 'OS-EXT-SRV-ATTR:host'))