From 80a808048340f7f5e95e71c4ee649fdae7c8c565 Mon Sep 17 00:00:00 2001 From: Mohamed Bassem Date: Sun, 9 Mar 2025 13:22:18 +0000 Subject: feat: Move background jobs with the admin actions. Fixes #1083 --- packages/trpc/routers/admin.ts | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) (limited to 'packages/trpc/routers/admin.ts') diff --git a/packages/trpc/routers/admin.ts b/packages/trpc/routers/admin.ts index bfdcbd37..337f050c 100644 --- a/packages/trpc/routers/admin.ts +++ b/packages/trpc/routers/admin.ts @@ -32,6 +32,23 @@ export const adminAppRouter = router({ z.object({ numUsers: z.number(), numBookmarks: z.number(), + }), + ) + .query(async ({ ctx }) => { + const [[{ value: numUsers }], [{ value: numBookmarks }]] = + await Promise.all([ + ctx.db.select({ value: count() }).from(users), + ctx.db.select({ value: count() }).from(bookmarks), + ]); + + return { + numUsers, + numBookmarks, + }; + }), + backgroundJobsStats: adminProcedure + .output( + z.object({ crawlStats: z.object({ queued: z.number(), pending: z.number(), @@ -64,9 +81,6 @@ export const adminAppRouter = router({ ) .query(async ({ ctx }) => { const [ - [{ value: numUsers }], - [{ value: numBookmarks }], - // Crawls queuedCrawls, [{ value: pendingCrawls }], @@ -95,9 +109,6 @@ export const adminAppRouter = router({ // Feed queuedFeed, ] = await Promise.all([ - ctx.db.select({ value: count() }).from(users), - ctx.db.select({ value: count() }).from(bookmarks), - // Crawls LinkCrawlerQueue.stats(), ctx.db @@ -140,8 +151,6 @@ export const adminAppRouter = router({ ]); return { - numUsers, - numBookmarks, crawlStats: { queued: queuedCrawls.pending + queuedCrawls.pending_retry, pending: pendingCrawls, -- cgit v1.2.3-70-g09d2