diff --git a/src/services/db.ts b/src/services/db.ts index 468be50..4cb1697 100644 --- a/src/services/db.ts +++ b/src/services/db.ts @@ -27,10 +27,12 @@ export async function setupCustomerDatabase(dbName: string, username: string) { } export async function teardownCustomerDatabase(dbName: string, username: string) { - // Reassign ownership back to doadmin before dropping + // Reassign ownership back to doadmin before dropping; skip if DB no longer exists const sql = postgres(config.doadminDbUrl.replace(/\/\w+(\?|$)/, `/${dbName}$1`), { max: 1 }); try { await sql.unsafe(`REASSIGN OWNED BY "${username}" TO doadmin;`); + } catch (err: any) { + if (err?.code !== "3D000") throw err; // 3D000 = database does not exist } finally { await sql.end(); }