From: Stephen Soltesz Date: Fri, 23 Dec 2011 23:17:47 +0000 (+0000) Subject: Merge branch 'master' of ssh://git.planet-lab.org/git/monitor X-Git-Url: http://git.onelab.eu/?p=monitor.git;a=commitdiff_plain;h=f6e368170a4e55dc0f6ccd51bf419ceec99e85c6;hp=f0b0b138c0a466eb3c15ae172ae77597dc376159 Merge branch 'master' of ssh://git.planet-lab.org/git/monitor --- diff --git a/Monitor.spec b/Monitor.spec index 9f8f29b..64a9211 100644 --- a/Monitor.spec +++ b/Monitor.spec @@ -7,7 +7,7 @@ %define name monitor # keep this version in sync with monitor/monitor_version.py %define version 3.1 -%define taglevel 5 +%define taglevel 6 %define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}} %global python_sitearch %( python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)" ) @@ -357,6 +357,10 @@ fi %changelog +* Wed Aug 31 2011 Stephen Soltesz - monitor-3.1-6 +- Minor updates to work with pcucontrol. +- Added action for some fprobe no-space errors. + * Wed Aug 31 2011 Stephen Soltesz - monitor-3.1-5 - account for new ok status type in PCUs - include a percentage of nodes up as well as raw node-count diff --git a/web/MonitorWeb/monitorweb/controllers.py b/web/MonitorWeb/monitorweb/controllers.py index 0f919ab..b368df9 100644 --- a/web/MonitorWeb/monitorweb/controllers.py +++ b/web/MonitorWeb/monitorweb/controllers.py @@ -25,6 +25,13 @@ from monitor.wrapper.plccache import plcdb_hn2lb as site_hn2lb from monitorweb.templates.links import * +def session_clear_all(): + session.flush() + try: + session.expunge_all() + except AttributeError: # SQLAlchemy < 0.5.1 + session.clear() + class ObjectQueryFields(widgets.WidgetsList): """The WidgetsList defines the fields of the form.""" pass @@ -389,7 +396,7 @@ class Root(controllers.RootController, MonitorXmlrpcServer, LocalExtensions): def nodeslow(self, filter='boot'): print "NODE------------------" print "befor-len: ", len( [ i for i in session] ) - session.flush(); session.clear() + session_clear_all() print "after-len: ", len( [ i for i in session] ) fbquery = FindbadNodeRecord.get_all_latest() query = [] @@ -513,7 +520,7 @@ class Root(controllers.RootController, MonitorXmlrpcServer, LocalExtensions): def pre_view(self, **data): - session.flush(); session.clear() + session_clear_all() loginbase=None loginbase_list=[] @@ -620,7 +627,7 @@ class Root(controllers.RootController, MonitorXmlrpcServer, LocalExtensions): @expose(template="monitorweb.templates.pcuview") @exception_handler(nodeaction_handler,"isinstance(tg_exceptions,RuntimeError)") def pcuviewold(self, loginbase=None, pcuid=None, hostname=None, since=20, **data): - session.flush(); session.clear() + session_clear_all() sitequery=[] pcuquery=[] nodequery=[] @@ -737,7 +744,7 @@ class Root(controllers.RootController, MonitorXmlrpcServer, LocalExtensions): def pcu(self, filter='all'): print "PCUVIEW------------------" print "befor-len: ", len( [ i for i in session] ) - session.flush(); session.clear() + session_clear_all() print "after-len: ", len( [ i for i in session] ) fbquery = FindbadPCURecord.get_all_latest() query = [] @@ -775,7 +782,7 @@ class Root(controllers.RootController, MonitorXmlrpcServer, LocalExtensions): def site(self, filter='all'): print "SITE------------------" print "befor-len: ", len( [ i for i in session] ) - session.flush(); session.clear() + session_clear_all() print "after-len: ", len( [ i for i in session] ) filtercount = {'good' : 0, 'down': 0, 'online':0, 'offline' : 0, 'new' : 0, 'pending' : 0, 'all' : 0} fbquery = HistorySiteRecord.query.all() diff --git a/web/MonitorWeb/monitorweb/monitor_xmlrpc.py b/web/MonitorWeb/monitorweb/monitor_xmlrpc.py index 2f46879..7d04c48 100644 --- a/web/MonitorWeb/monitorweb/monitor_xmlrpc.py +++ b/web/MonitorWeb/monitorweb/monitor_xmlrpc.py @@ -98,7 +98,10 @@ class MonitorXmlrpcServer(object): if method is None or not getattr(method, "exposed", False): raise AssertionError("method does not exist") - session.clear() + try: + session.expunge_all() + except AttributeError: # SQLAlchemy < 0.5.1 + session.clear() # Call the method, convert it into a 1-element tuple # as expected by dumps response = method(*params) diff --git a/zabbix.spec b/zabbix.spec index b4fb515..35e95cf 100644 --- a/zabbix.spec +++ b/zabbix.spec @@ -295,6 +295,10 @@ rm -f %{zabbix_logdir}/zabbix_agentd.log %{zabbix_webdir} %changelog +* Wed Aug 31 2011 Stephen Soltesz - monitor-3.1-6 +- Minor updates to work with pcucontrol. +- Added action for some fprobe no-space errors. + * Wed Aug 31 2011 Stephen Soltesz - monitor-3.1-5 - account for new ok status type in PCUs - include a percentage of nodes up as well as raw node-count @@ -525,6 +529,6 @@ rm -f %{zabbix_logdir}/zabbix_agentd.log %define module_current_branch 3.0 -%define taglevel 5 +%define taglevel 6 %define version 3.1