Fix: Configurar pool de PostgreSQL para evitar errores de autenticación
All checks were successful
build-and-deploy / build-and-deploy (push) Successful in 16s

- Agregar configuración de pool con límites y timeouts
- Agregar manejo de errores del pool para evitar crashes
- Soluciona errores intermitentes de autenticación causados por conexiones inactivas
This commit is contained in:
2025-11-09 16:30:15 -06:00
parent 1b47b60c5b
commit 003fdf18a7

View File

@@ -2,7 +2,21 @@ import pkgPg from 'pg';
import { PGDATABASE, PGHOST, PGPASSWORD, PGPORT, PGUSER, SESSION_TIMEOUT, VLAN_ID, MAX_DOWN, MAX_UP } from '../config/env.js'; import { PGDATABASE, PGHOST, PGPASSWORD, PGPORT, PGUSER, SESSION_TIMEOUT, VLAN_ID, MAX_DOWN, MAX_UP } from '../config/env.js';
const { Pool } = pkgPg; const { Pool } = pkgPg;
export const pool = new Pool({ host: PGHOST, port: PGPORT, database: PGDATABASE, user: PGUSER, password: PGPASSWORD }); export const pool = new Pool({
host: PGHOST,
port: PGPORT,
database: PGDATABASE,
user: PGUSER,
password: PGPASSWORD,
max: 20, // número máximo de conexiones en el pool
idleTimeoutMillis: 30000, // cerrar conexiones inactivas después de 30 segundos
connectionTimeoutMillis: 5000, // timeout para obtener una conexión del pool
});
// Manejo de errores del pool para evitar que el proceso se caiga
pool.on('error', (err, client) => {
console.error('Error inesperado en el cliente de PostgreSQL:', err);
});
export async function ensureSchema() { export async function ensureSchema() {
const client = await pool.connect(); const client = await pool.connect();