Added function to remove stale jobs logs

This commit is contained in:
Donald Zou
2025-12-02 11:24:03 +08:00
parent 2ee1b3b138
commit aba3c5da64
2 changed files with 15 additions and 2 deletions

View File

@@ -78,3 +78,15 @@ class PeerJobLogger:
) )
).mappings().fetchall() ).mappings().fetchall()
return table return table
def deleteLogs(self, LogID = None, JobID = None):
with self.engine.begin() as conn:
print(f"Deleted logs of JobID {JobID}")
conn.execute(
self.jobLogTable.delete().where(
db.and_(
(self.jobLogTable.c.LogID == LogID if LogID is not None else True),
(self.jobLogTable.c.JobID == JobID if JobID is not None else True),
)
)
)

View File

@@ -201,6 +201,7 @@ class PeerJobs:
} }
).where(self.peerJobTable.columns.JobID == job.get('JobID')) ).where(self.peerJobTable.columns.JobID == job.get('JobID'))
) )
self.JobLogger.deleteLogs(JobID=job.get('JobID'))
self.JobLogger.log(job.get('JobID'), Message=f"Job is removed due to being stale.") self.JobLogger.log(job.get('JobID'), Message=f"Job is removed due to being stale.")
def __runJob_Compare(self, x: float | datetime, y: float | datetime, operator: str): def __runJob_Compare(self, x: float | datetime, y: float | datetime, operator: str):