Fix image downloading error handling

This commit is contained in:
Zoe Roux 2025-11-03 12:08:52 +01:00
parent 31500dc3c5
commit c1b243df9c
No known key found for this signature in database

View File

@ -99,13 +99,15 @@ export const processImages = async () => {
const column = sql.raw(img.column); const column = sql.raw(img.column);
await tx.execute(sql` 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)); await tx.delete(mqueue).where(eq(mqueue.id, item.id));
} catch (err: any) { } catch (err: any) {
console.error("Failed to download image", img.url, err.message); 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) .update(mqueue)
.set({ attempt: sql`${mqueue.attempt}+1` }) .set({ attempt: sql`${mqueue.attempt}+1` })
.where(eq(mqueue.id, item.id)); .where(eq(mqueue.id, item.id));