From c1b243df9c86f5d9231b39e58a58be5cfbbbc54e Mon Sep 17 00:00:00 2001 From: Zoe Roux Date: Mon, 3 Nov 2025 12:08:52 +0100 Subject: [PATCH] Fix image downloading error handling --- api/src/controllers/seed/images.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/api/src/controllers/seed/images.ts b/api/src/controllers/seed/images.ts index fd31f838..7eaefcc4 100644 --- a/api/src/controllers/seed/images.ts +++ b/api/src/controllers/seed/images.ts @@ -99,13 +99,15 @@ export const processImages = async () => { const column = sql.raw(img.column); await tx.execute(sql` - update ${table} set ${column} = ${ret} where ${column}->'id' = ${sql.raw(`'"${img.id}"'::jsonb`)} - `); + update ${table} set ${column} = ${ret} + where ${column}->'id' = ${sql.raw(`'"${img.id}"'::jsonb`)} + `); await tx.delete(mqueue).where(eq(mqueue.id, item.id)); } catch (err: any) { console.error("Failed to download image", img.url, err.message); - await tx + // don't use the transaction here, it can be aborted. + await db .update(mqueue) .set({ attempt: sql`${mqueue.attempt}+1` }) .where(eq(mqueue.id, item.id));