Reviewed-by: ShaoHe Feng <shaohef(a)linux.vnet.ibm.com>
do you means this BackgroundTask?
self.guests_stats_thread = BackgroundTask(GUESTS_STATS_INTERVAL,
self._update_guests_stats)
we should avoid multiple times to run this BackgroundTask.
when refer get_list method?
I'm afraid the there are server instances of VMsModel, but need to check
where are
these instances from the code.
On 03/04/2014 06:14 PM, lvroyce(a)linux.vnet.ibm.com wrote:
From: Royce Lv <lvroyce(a)linux.vnet.ibm.com>
When refer vm model get_list method, the stats collection task
will run multiple times. Make vms model class a singleton so that
this task just run once.
Signed-off-by: Royce Lv <lvroyce(a)linux.vnet.ibm.com>
---
src/kimchi/model/vms.py | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/kimchi/model/vms.py b/src/kimchi/model/vms.py
index 3ae2048..449acdb 100644
--- a/src/kimchi/model/vms.py
+++ b/src/kimchi/model/vms.py
@@ -27,6 +27,7 @@ from cherrypy.process.plugins import BackgroundTask
from kimchi import vnc
from kimchi import xmlutils
+from kimchi.basemodel import Singleton
from kimchi.exception import InvalidOperation, InvalidParameter
from kimchi.exception import MissingParameter, NotFoundError, OperationFailed
from kimchi.model.config import CapabilitiesModel
@@ -52,6 +53,8 @@ stats = {}
class VMsModel(object):
+ __metaclass__ = Singleton
+
def __init__(self, **kargs):
self.conn = kargs['conn']
self.objstore = kargs['objstore']
--
Thanks and best regards!
Sheldon Feng(冯少合)<shaohef(a)linux.vnet.ibm.com>
IBM Linux Technology Center