Skip to content
Snippets Groups Projects
Commit 980aa037 authored by Alex Wiens's avatar Alex Wiens
Browse files

Prule.db: Fix bugs

parent 942a2909
No related branches found
No related tags found
No related merge requests found
......@@ -7,6 +7,7 @@ import sqlite3
class ResultsDB:
def __init__(self, path):
self.path = path
self.con = sqlite3.connect(path)
self.rule_dict = None
def close(self):
......@@ -121,6 +122,7 @@ rulename TEXT
res = cur.execute('SELECT DISTINCT cluster from jobs;')
clusters = []
for c in res.fetchall():
if c[0] != None:
clusters.append(c[0])
return clusters
......@@ -132,6 +134,7 @@ rulename TEXT
res = cur.execute('SELECT DISTINCT user FROM jobs WHERE cluster = ?;', [cluster])
users = []
for u in res.fetchall():
if u[0] != None:
users.append(u[0])
return users
......@@ -143,6 +146,7 @@ rulename TEXT
res = cur.execute('SELECT DISTINCT project FROM jobs WHERE cluster = ?;', [cluster])
projects = []
for p in res.fetchall():
if p[0] != None:
projects.append(p[0])
return projects
......@@ -150,19 +154,19 @@ rulename TEXT
cur = self.con.cursor()
cur.execute("SELECT * FROM jobs WHERE ccid = ?", [ccid])
res = cur.fetchall()
return res
return self.db_rows_to_dicts(res, 'jobs')
def db_get_result_slurm(self, slurmid, cluster):
cur = self.con.cursor()
cur.execute("SELECT * FROM jobs WHERE jobid = ? AND cluster = ?", [slurmid, cluster])
res = cur.fetchall()
return res
return self.db_rows_to_dicts(res, 'jobs')
def db_get_all_results(self):
cur = self.con.cursor()
cur.execute("SELECT * FROM jobs")
res = cur.fetchall()
return res
return self.db_rows_to_dicts(res, 'jobs')
def db_insert_failure(self, ccjobid):
res = self.db_get_result(ccjobid)
......@@ -288,12 +292,17 @@ rulename TEXT
res = cur.fetchall()
return self.db_rows_to_dicts(res, 'jobs')
def __db_last_result(self):
def db_last_result(self):
cur = self.con.cursor()
cur.execute("SELECT * FROM jobs ORDER BY rowid DESC LIMIT 1;")
res = cur.fetchall()
return self.db_rows_to_dicts(res, 'jobs')
def db_first_result(self):
cur = self.con.cursor()
cur.execute("SELECT * FROM jobs ORDER BY rowid ASC LIMIT 1;")
res = cur.fetchall()
return self.db_rows_to_dicts(res, 'jobs')
def db_rule_stats(self, cluster):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment