Updated the job listing query to sort by the most recent activity, so that all jobs are listed with the latest activity at the top. Previously, pending jobs (with no processing_started) could be grouped separately due to how SQL sorted NULL values.

This commit is contained in:
Beverly Nguyen
2025-06-25 11:53:41 -07:00
parent dc3c313361
commit 52f8bd23de

View File

@@ -75,7 +75,7 @@ def dao_get_jobs_by_service_id(
stmt = ( stmt = (
select(Job) select(Job)
.where(*query_filter) .where(*query_filter)
.order_by(Job.processing_started.desc(), Job.created_at.desc()) .order_by(func.coalesce(Job.processing_started, Job.created_at).desc())
.limit(page_size) .limit(page_size)
.offset(offset) .offset(offset)
) )
@@ -157,17 +157,17 @@ def dao_create_job(job):
orig_time = job.created_at orig_time = job.created_at
now_time = utc_now() now_time = utc_now()
diff_time = now_time - orig_time diff_time = now_time - orig_time
current_app.logger.warning( current_app.logger.info(
f"#notify-debug-admin-1859 dao_create_job orig created at {orig_time} and now {now_time}" f"#notify-debug-admin-1859 dao_create_job orig created at {orig_time} and now {now_time}"
) )
if diff_time.total_seconds() > 300: # It should be only a few seconds diff at most if diff_time.total_seconds() > 300: # It should be only a few seconds diff at most
current_app.logger.warning( current_app.logger.error(
"#notify-debug-admin-1859 Something is wrong with job.created_at!" "#notify-debug-admin-1859 Something is wrong with job.created_at!"
) )
if os.getenv("NOTIFY_ENVIRONMENT") not in ["test"]: if os.getenv("NOTIFY_ENVIRONMENT") not in ["test"]:
job.created_at = now_time job.created_at = now_time
dao_update_job(job) dao_update_job(job)
current_app.logger.warning( current_app.logger.error(
f"#notify-debug-admin-1859 Job created_at reset to {job.created_at}" f"#notify-debug-admin-1859 Job created_at reset to {job.created_at}"
) )