From 307018953750124efa9ecf1d9563abd3f4502c49 Mon Sep 17 00:00:00 2001 From: Aitor Alonso Date: Mon, 20 Apr 2026 21:58:54 +0200 Subject: [PATCH] fix: fixes 4186 Some database providers, like supabase, provides two URLs to access the database. A main URL behind pgBouncer's for load balancing, and a direct separated URL to perform migrations (running DDL operations), as does not support advisory locks or multi-statement DDL required by migrations. Before v3.1.0, adding `directUrl` along with `url` to `prisma/schema.prisma` was enought. Now, I'm making a commit to use direct url when set --- scripts/check-db.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/check-db.js b/scripts/check-db.js index 8c806cd8f..aaa128af5 100644 --- a/scripts/check-db.js +++ b/scripts/check-db.js @@ -67,7 +67,8 @@ async function checkDatabaseVersion() { async function applyMigration() { if (!process.env.SKIP_DB_MIGRATION) { - console.log(execSync('prisma migrate deploy').toString()); + const directUrl = process.env.DIRECT_DATABASE_URL || process.env.DATABASE_URL; + console.log(execSync('prisma migrate deploy', { env: { ...process.env, DATABASE_URL: directUrl } }).toString()); success('Database is up to date.'); }