[rhmessaging-commits] rhmessaging commits: r4127 - mgmt/newdata/cumin/python/cumin/grid.
rhmessaging-commits at lists.jboss.org
rhmessaging-commits at lists.jboss.org
Mon Jul 19 11:54:03 EDT 2010
Author: justi9
Date: 2010-07-19 11:54:02 -0400 (Mon, 19 Jul 2010)
New Revision: 4127
Modified:
mgmt/newdata/cumin/python/cumin/grid/submission.py
Log:
Age out submissions that haven't had new work in a while
Modified: mgmt/newdata/cumin/python/cumin/grid/submission.py
===================================================================
--- mgmt/newdata/cumin/python/cumin/grid/submission.py 2010-07-19 13:37:01 UTC (rev 4126)
+++ mgmt/newdata/cumin/python/cumin/grid/submission.py 2010-07-19 15:54:02 UTC (rev 4127)
@@ -1,11 +1,14 @@
import logging
import shlex
+from rosemary.sqlquery import *
+
from cumin.objectframe import *
from cumin.objectselector import *
from cumin.objecttask import *
from cumin.widgets import *
from cumin.util import *
+
from job import JobSelector, JobFrame
log = logging.getLogger("cumin.grid.submission")
@@ -31,6 +34,25 @@
self.add_join(jobserver, submission.jobserverRef, jobserver._id)
+ FreshnessFilter(self.query, submission)
+
+class FreshnessFilter(SqlQueryFilter):
+ def __init__(self, query, cls):
+ super(FreshnessFilter, self).__init__(query)
+
+ table = cls.sql_table
+
+ fmt = "(%s > now() - interval '3 days' or %s > 0 or %s > 0 or %s > 0)"
+ args = (table._qmf_update_time.identifier,
+ table.Idle.identifier,
+ table.Running.identifier,
+ table.Held.identifier)
+
+ self.text = fmt % args
+
+ def emit(self):
+ return self.text
+
class SubmissionSelector(ObjectSelector):
def __init__(self, app, name):
cls = app.model.com_redhat_grid.Submission
More information about the rhmessaging-commits
mailing list