Nodejs mariadb Fehler "retrieve connection from pool timeout"?
Hallo, ich habe ein kleines nodejs programm welches mit einer datenbank kommuniziert, allerdings bekomme ich nach einiger Zeit eine Fehlermeldung (siehe unten) zuerst war mein gedanke dass das programm die Datenbankverbundungen die geöffnet wurden nicht mehr richtig schließt und es sich deswegen ansammelt aber ich habe immer hinterher conn.close() verwendet, was kann ich noch tun bzw. woher kann das problem noch kommen?
Der fehler:
SqlError: (conn=-1, no: 45028, SQLState: HY000) retrieve connection from pool timeout after 10001ms
(pool connections: active=0 idle=0 limit=10)
at module.exports.createError (/home/pr/node_modules/mariadb/lib/misc/errors.js:64:10)
at Pool._requestTimeoutHandler (/home/pr/node_modules/mariadb/lib/pool.js:349:26)
at listOnTimeout (node:internal/timers:573:17)
at process.processTimers (node:internal/timers:514:7) {
sqlMessage: 'retrieve connection from pool timeout after 10001ms\n' +
' (pool connections: active=0 idle=0 limit=10)',
sql: null,
fatal: false,
errno: 45028,
sqlState: 'HY000',
code: 'ER_GET_CONNECTION_TIMEOUT'
}
der code:
https://pastebin.com/pFu5ffJt
1 Antwort
In der Funktion pullthread beendest du die Verbindung frühzeitig, obwohl du sie in einem Callback (fetch) noch einmal nutzt. Schau besser auch den restlichen Code noch einmal nach solchen Fällen durch.
habs rausgefunden, hatte noch so paar Fälle drin :) letzten endes musste ich "nur" das mariadb paket richtig installieren, hat mich tage an code debugging gebraucht bis ich das gemerkt hab :,)