I am struggling with integrating node-mysql2 into Sveltekit. As soon as the connection goes idle I get an 'ECONNRESET' error and my application freezes until the page is reloaded.
Below is my db.ts file located in src/lib. I import this into each server call that requires it and utilise the 'query' function.
Can anyone shed some light onto why I am running into this issue? Or is there a better way to do it?
import { DB_HOST, DB_USER, DB_PASSWORD } from '$env/static/private';import DataBase from 'mysql2';const pool = DataBase.createPool({ host: DB_HOST, user: DB_USER, password: DB_PASSWORD, database: DB_NAME, waitForConnections: true, connectionLimit: 10, maxIdle: 10, idleTimeout: 600000, connectTimeout: 30000, queueLimit: 0, enableKeepAlive: true, keepAliveInitialDelay: 0, namedPlaceholders: true,}).promise();const query = async function (sql:string, vals:any = undefined) { try { const conn = await pool.getConnection(); const [result] = await conn.query(sql, vals); conn.release(); return result; } catch(e) { console.log(e); }};export default query;