diff --git a/apps/sim/socket-server/database/operations.ts b/apps/sim/socket-server/database/operations.ts index 3e550917199..8502d14ae07 100644 --- a/apps/sim/socket-server/database/operations.ts +++ b/apps/sim/socket-server/database/operations.ts @@ -13,15 +13,15 @@ const connectionString = env.DATABASE_URL const socketDb = drizzle( postgres(connectionString, { prepare: false, - idle_timeout: 20, - connect_timeout: 10, - max: 5, + idle_timeout: 10, + connect_timeout: 20, + max: 15, onnotice: () => {}, }), { schema } ) -// Use dedicated connection for socket operations +// Use dedicated connection for socket operations, fallback to shared db for compatibility const db = socketDb // Constants diff --git a/apps/sim/socket-server/rooms/manager.ts b/apps/sim/socket-server/rooms/manager.ts index 74f16f9ecfb..b4362113853 100644 --- a/apps/sim/socket-server/rooms/manager.ts +++ b/apps/sim/socket-server/rooms/manager.ts @@ -11,8 +11,8 @@ const connectionString = env.DATABASE_URL const db = drizzle( postgres(connectionString, { prepare: false, - idle_timeout: 20, - connect_timeout: 10, + idle_timeout: 15, + connect_timeout: 20, max: 3, onnotice: () => {}, }), diff --git a/packages/db/index.ts b/packages/db/index.ts index 6c7567a0040..62c00a8a682 100644 --- a/packages/db/index.ts +++ b/packages/db/index.ts @@ -10,11 +10,28 @@ if (!connectionString) { throw new Error('Missing DATABASE_URL environment variable') } +console.log( + '[DB Pool Init]', + JSON.stringify({ + timestamp: new Date().toISOString(), + nodeEnv: process.env.NODE_ENV, + action: 'CREATING_CONNECTION_POOL', + poolConfig: { + max: 30, + idle_timeout: 20, + connect_timeout: 30, + prepare: false, + }, + pid: process.pid, + isProduction: process.env.NODE_ENV === 'production', + }) +) + const postgresClient = postgres(connectionString, { prepare: false, idle_timeout: 20, - connect_timeout: 10, - max: 20, + connect_timeout: 30, + max: 30, onnotice: () => {}, })