sql >> Databasteknik >  >> RDS >> Mysql

MySQL Hibernate-anslutningsproblem när du använder c3p0

testWhileIdle är inte en c3p0-egenskap. Det gör inte ont, men kan förvirra dig till att tro att du gör något som du inte gör. Du testar lediga anslutningar, förmodligen alldeles för ofta, eftersom du också testar anslutningar vid kassan.

Din konfiguration är spridd över två ställen. Jag är osäker på hur vår- och vilolägeskonfigurationerna kommer att interagera. c3p0 DataSources dump config vid INFO på pool init. Du kanske vill verifiera att du har den konfiguration du förväntar dig.

Angående ditt problem, det låter väldigt mycket som att du har en anslutningsläcka. Du måste se till att alla anslutningar som checkas ut från en datakälla stängs() på ett tillförlitligt sätt i en finally-metod eller via prova-med-resurser i Java 7+.

Använd c3p0 config params unreturnedConnectionTimeout och debugUnreturnedConnectionStackTraces för att felsöka en anslutningsläcka.

Se här .

(Obs! I hibernate.cfg skulle de vara hibernate.c3p0.unreturnedConnectionTimeout och hibernate.c3p0.debugUnreturnedConnectionStackTraces . Eller så kan du ställa in dem mer direkt i din Spring xml.)




  1. Datasynkronisering mellan MySQL och MongoDB

  2. Host xxxx får inte ansluta till denna MySQL-server

  3. fatalt fel påträffades under kommandoexekvering under uppdatering

  4. De tre bästa tipsen du behöver veta för att skriva snabbare SQL-vyer