2014/3/4 20:23, Sheldon:
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 get the same question here. Does that mean class
VMsModel will be
instantiated multiples times and VMsModel.__init__() will be called
multiple times?
I'm afraid the there are server instances of VMsModel, but need
to
check where are
these instances from the code.
Agree. Not sure where are the multiple instances of class VMsModel
coming from.
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']