Safely handle null database pool in local environment

This commit is contained in:
Gunaseelan P
2026-09-09 19:54:01 +05:30
parent db85068bca
commit 95e9dce663
+9 -4
View File
@@ -11,15 +11,15 @@ app.use(cors());
app.use(express.json({ limit: '10mb' })); // support large payloads for base64 background images app.use(express.json({ limit: '10mb' })); // support large payloads for base64 background images
// Database connection configuration // Database connection configuration
const isRenderInternal = process.env.DATABASE_URL && process.env.DATABASE_URL.includes('.render.com') || (process.env.DATABASE_URL && process.env.DATABASE_URL.includes('@dpg-')); const isRenderInternal = process.env.DATABASE_URL && (process.env.DATABASE_URL.includes('.render.com') || process.env.DATABASE_URL.includes('@dpg-'));
const pool = new Pool({ const pool = process.env.DATABASE_URL ? new Pool({
connectionString: process.env.DATABASE_URL, connectionString: process.env.DATABASE_URL,
ssl: isRenderInternal ssl: isRenderInternal
? false ? false
: (process.env.DATABASE_URL && process.env.DATABASE_URL.includes('sslmode=require') : (process.env.DATABASE_URL.includes('sslmode=require')
? { rejectUnauthorized: false } ? { rejectUnauthorized: false }
: (process.env.NODE_ENV === 'production' ? { rejectUnauthorized: false } : false)) : (process.env.NODE_ENV === 'production' ? { rejectUnauthorized: false } : false))
}); }) : null;
// Default regions data // Default regions data
const DEFAULT_REGIONS = [ const DEFAULT_REGIONS = [
@@ -99,6 +99,11 @@ let dbConnected = false;
// Initialize Database Tables // Initialize Database Tables
async function initDb() { async function initDb() {
if (!pool) {
dbConnected = false;
console.log("ℹ️ No DATABASE_URL set. Running in local memory mode.");
return;
}
let client; let client;
try { try {
console.log("Connecting to PostgreSQL database..."); console.log("Connecting to PostgreSQL database...");