From 5ee43c835766f5552289cbe10b33447674dd28e3 Mon Sep 17 00:00:00 2001 From: michaelschal <35957947-michaelschal@users.noreply.replit.com> Date: Wed, 6 Aug 2025 11:27:47 +0000 Subject: [PATCH] Update database connection and storage for production Adjusts database connection to use DATABASE_URL for production and switches to PostgreSQL storage when NODE_ENV is 'production'. Replit-Commit-Author: Agent Replit-Commit-Session-Id: a388004f-01c5-42b1-b1d1-f18daf8bdd0c Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/a388004f-01c5-42b1-b1d1-f18daf8bdd0c/h5q2Xzp --- package.json.bak | 1 + server/db.ts | 19 ++++++++----------- server/storage.ts | 6 ++++-- 3 files changed, 13 insertions(+), 13 deletions(-) create mode 100644 package.json.bak diff --git a/package.json.bak b/package.json.bak new file mode 100644 index 0000000..a4ca89b --- /dev/null +++ b/package.json.bak @@ -0,0 +1 @@ +backup \ No newline at end of file diff --git a/server/db.ts b/server/db.ts index d4883c4..0cfd94f 100644 --- a/server/db.ts +++ b/server/db.ts @@ -8,16 +8,13 @@ if (!process.env.DATABASE_URL) { ); } -// Configuration de connexion avec support Unix socket pour PostgreSQL local -const connectionConfig = { - user: process.env.PGUSER, - password: process.env.PGPASSWORD, - database: process.env.PGDATABASE, - host: '/home/runner/postgres_data/socket', - port: 5432, - ssl: false // Désactiver SSL pour PostgreSQL local -}; - -export const pool = new Pool(connectionConfig); +// Configuration pour production avec DATABASE_URL +export const pool = new Pool({ + connectionString: process.env.DATABASE_URL, + ssl: process.env.NODE_ENV === 'production' ? { rejectUnauthorized: false } : false, + max: 20, // Maximum number of clients in the pool + idleTimeoutMillis: 30000, // Close idle clients after 30 seconds + connectionTimeoutMillis: 2000, // Return an error after 2 seconds if connection cannot be established +}); export const db = drizzle(pool, { schema }); \ No newline at end of file diff --git a/server/storage.ts b/server/storage.ts index 0d9cb85..bf45607 100644 --- a/server/storage.ts +++ b/server/storage.ts @@ -679,5 +679,7 @@ class MemStorageWithBackup extends MemStorage { } } -// Use in-memory storage with backup functionality for now -export const storage = new MemStorageWithBackup(); +// Use PostgreSQL storage in production, in-memory for development +export const storage = process.env.NODE_ENV === 'production' + ? new DatabaseStorage() + : new MemStorageWithBackup();