Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

A conexão do banco de dados com o MySQL expira mesmo após definir c3p0.testConnectionOnCheckout=true


Começamos a ter o mesmo problema de "Link de comunicação" quando atualizamos a hibernação para 4.3.x usando JPA e C3P0 para pool de conexões.

Parece que isso seria um problema de pool de conexões, pois as conexões estavam sendo mantidas por mais tempo que o banco de dados wait_timeout (que era o padrão de 8 horas), apesar das minhas configurações de C3P0. No entanto, corrigi o problema alterando a configuração de hibernação em nosso persistence.xml com:
<property name="hibernate.connection.release_mode" value="after_transaction" />

Parece que o comportamento padrão na hibernação mudou para não liberar a conexão após as transações, portanto, você deve definir explicitamente esse modo se estiver usando o pool.