From 78e23ab7cdebb90f10f9d9732488ac0470e9f47e Mon Sep 17 00:00:00 2001 From: zk Date: Fri, 19 Jun 2026 22:35:50 +0100 Subject: [PATCH] fix: better admin cron view (#1698) --- .../server/src/lib/admin/admin-queries.ts | 36 ++++--------------- 1 file changed, 6 insertions(+), 30 deletions(-) diff --git a/typescript/server/src/lib/admin/admin-queries.ts b/typescript/server/src/lib/admin/admin-queries.ts index 4c2086755..c5b749dc3 100644 --- a/typescript/server/src/lib/admin/admin-queries.ts +++ b/typescript/server/src/lib/admin/admin-queries.ts @@ -7,7 +7,6 @@ import { SELECT_JOB_QUEUE, } from "#lib/db-formats/admin-jobs"; import DB from "#services/pg/db"; -import { sql } from "kysely"; export const ADMIN_PAGE_SIZE = 50; @@ -162,34 +161,11 @@ export function GetCronTasks(): Promise> { .execute(); } -const CAP_PER_TASK_TYPE = 100; - -export async function GetCronTaskExecutions(): Promise> { - const rows = await DB.with("ranked", (db) => - db - .selectFrom("cron_task_execution") - .select([ - ...SELECT_CRON_TASK_EXECUTION, - sql`ROW_NUMBER() OVER (PARTITION BY cron_task_execution.task_id ORDER BY cron_task_execution.scheduled_at DESC)`.as( - "rn", - ), - ]) - .where("cron_task_execution.scheduled_at", ">=", adminRecentSinceIso()), - ) - .selectFrom("ranked") - .select([ - "ranked.id", - "ranked.task_id", - "ranked.scheduled_at", - "ranked.started_at", - "ranked.completed_at", - "ranked.status", - "ranked.output", - "ranked.error", - ]) - .where(sql`ranked.rn <= ${sql.lit(CAP_PER_TASK_TYPE)}`) - .orderBy("ranked.scheduled_at", "desc") +export function GetCronTaskExecutions(): Promise> { + return DB.selectFrom("cron_task_execution") + .select(SELECT_CRON_TASK_EXECUTION) + .where("cron_task_execution.scheduled_at", ">=", adminRecentSinceIso(24 * 7)) + .orderBy("cron_task_execution.scheduled_at", "desc") + .limit(100) .execute(); - - return rows as Array; }