Configuration reference: https://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html
On Thu, Jun 11, 2015 at 6:58 PM, Filip Hanik <fi...@hanik.com> wrote: > set the properties > > logAbandoned="true" > removeAbandoned="true" > removeAbandonedTimeout="60" (value is in seconds, should be larger than > your longest running transaction) > timeBetweenEvictionRunsMillis="15000" (value is in milliseconds) > > if you have a leak (meaning your code is not returning the connections) > you will see log entries > that clearly detail the stack trace of where the problem occurred > > an abandoned connection is a connection where you called > DataSource.getConnection() and then never called Connection.close() on > > Filip > > > > On Thu, Jun 11, 2015 at 6:18 PM, Douglas Schaible <doug...@mac.com> wrote: > >> Good Day All, >> >> I am having a problem with a connection pool and I was hoping for some >> guidance. >> >> I have defined the connection pool below for two deployed applications to >> use. When I bounce the server I can see that it immediately crates 100 >> connections to the DB. (I am ok with this, but that is not what is >> specified in the config) Then when I access the application repeatedly >> very quickly new connections to the DB are created each time a page is >> called till it reaches about 150 and then future calls fail with the >> message >> "com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Too >> many connections” logged by the server. >> >> If we don’t place any extra load on the server the number of connections >> to the DB are reduced to 1 or 2 after 24 hours and you get the error >> "Timeout: Pool empty. Unable to fetch a connection in 30 seconds, none >> available[size:100; busy:100; idle:0; lastwait:30000].” from one of the >> applications and the other application continues to work just fine. >> >> I believe that the DB, MySQL, is dropping the connection, but tomcat does >> not know that it has been dropped. >> >> I am looking for some guidance on how to tune this configuration. Any >> suggestions? >> >> >> >> <Resource >> name="jdbc/PDB" >> auth="Container" >> type="javax.sql.DataSource" >> factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" >> initialSize="10" >> maxTotal="100" >> maxIdle="5" >> maxWaitMillis="10000" >> username=“xxxxxx" >> password=“xxxxxx" >> driverClassName="com.mysql.jdbc.Driver" >> url="jdbc:mysql://xxxxx.xxxxxx.us-east-1.rds.amazonaws.com”/> >> >> >> Server version: Apache Tomcat/8.0.20 >> Server number: 8.0.20.0 >> OS Name: Linux >> OS Version: 3.14.35-28.38.amzn1.x86_64 >> Architecture: amd64 >> JVM Version: 1.7.0_79-mockbuild_2015_04_22_23_18-b00 >> JVM Vendor: Oracle Corporation >> >> Thanks, >> Doug >> >> >