[Kimchi-devel] [PATCH] model.host: avoid redundant libvirt lookupByName API invocation
Zhou Zheng Sheng
zhshzhou at linux.vnet.ibm.com
Wed May 28 09:52:50 UTC 2014
In HostModel._get_vms_list_by_state(), it gets a list of domain objects
and extracts the names, then it traverses the names and calls
lookupByName(name) to get domain objects. This is redundant because it
has a list of domain object already.
This patch fixes the problem.
Signed-off-by: Zhou Zheng Sheng <zhshzhou at linux.vnet.ibm.com>
---
src/kimchi/model/host.py | 12 +++---------
1 file changed, 3 insertions(+), 9 deletions(-)
diff --git a/src/kimchi/model/host.py b/src/kimchi/model/host.py
index e9ac487..5844f4b 100644
--- a/src/kimchi/model/host.py
+++ b/src/kimchi/model/host.py
@@ -104,15 +104,9 @@ class HostModel(object):
def _get_vms_list_by_state(self, state):
conn = self.conn.get()
- names = [dom.name().decode('utf-8') for dom in conn.listAllDomains(0)]
-
- ret_list = []
- for name in names:
- dom = conn.lookupByName(name.encode("utf-8"))
- info = dom.info()
- if (DOM_STATE_MAP[info[0]]) == state:
- ret_list.append(name)
- return ret_list
+ return [dom.name().decode('utf-8')
+ for dom in conn.listAllDomains(0)
+ if (DOM_STATE_MAP[dom.info()[0]]) == state]
class HostStatsModel(object):
--
1.9.3
More information about the Kimchi-devel
mailing list