From 59256ad9ff237c337c8e69384102042c973b51d3 Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 11 Jul 2026 04:45:08 +0000 Subject: [PATCH] =?UTF-8?q?Log=20de=20diagnostic=20:=20h=C3=B4te=20Postgre?= =?UTF-8?q?SQL=20cibl=C3=A9=20au=20d=C3=A9marrage?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Affiche host/port/db/user à la connexion et un message explicite en cas d'échec d'authentification persistant, pour identifier immédiatement une stack déployée avec une ancienne version du compose. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01Fkg15RCxNgUys4ru73He2o --- server/src/db.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/server/src/db.js b/server/src/db.js index 0e0cd97..f1c9dff 100644 --- a/server/src/db.js +++ b/server/src/db.js @@ -11,12 +11,25 @@ export const pool = new pg.Pool({ export const query = (text, params) => pool.query(text, params); export async function waitForDb(retries = 30, delayMs = 1000) { + console.log( + `Connecting to PostgreSQL: host=${config.db.host} port=${config.db.port} ` + + `db=${config.db.database} user=${config.db.user}` + ); for (let i = 1; i <= retries; i++) { try { await pool.query('SELECT 1'); return; } catch (err) { - if (i === retries) throw err; + if (i === retries) { + if (err.code === '28P01') { + console.error( + 'Authentication failed: the sbc_app password in PostgreSQL does not match ' + + 'PGPASSWORD/APP_DB_PASSWORD. The db-sync service realigns it at every stack ' + + 'start — make sure it ran against this same database.' + ); + } + throw err; + } await new Promise((r) => setTimeout(r, delayMs)); } }