mysqljs/mysql

Connections in pool have an infinite lifetime

Open

#1.276 aberto em 12 de nov. de 2015

Ver no GitHub
 (8 comments) (4 reactions) (0 assignees)JavaScript (2.502 forks)batch import
help wanted

Métricas do repositório

Stars
 (18.137 stars)
Métricas de merge de PR
 (Nenhuma PRs mesclada em 30d)

Description

I have a process running all the time and when it idles for a while the connections in the pool are in a sleeping state. Eventually MySQL purges those connections based on the wait_timeout setting in my.cnf. Once this happens and I try to use a connection it will fail because the module assumes the connection is still live and tries to use it only to get a timeout or connection exception.

I would propose adding an option when creating a pool connection_lifetime which will work in a following way. When getting a connection from the pool, if the connection_lifetime is not exceeded we simply return the connection, if however it is exceeded we kill the selected free connection and create a new one in it's place. That should solve the issue.

Guia do colaborador