Dear Eric,

and see that all my threads are in the WAITING state from
org.apache.tomcat.dbcp.pool.impl.GenericObjectPool.borrowObject
(GenericObjectPool.java:810)

I don't believe I have any connection leaks in my code

Belief is not a substitute for evidence... Your webapp is clearly not
returning connection objects to the pool in a timely fashion.

I am tempted to agree with you; I just am having trouble understanding how
or why they aren't being returned properly.

I'd suggest you look into hooking your application up to Java- monitor.com. It will pick up on Tomcat-managed data sources automatically, and it can also help you do Hibernate session leak detection (if you use Hibernate). http://java-monitor.com/forum/livedemo.php shows you what it looks like. Just click on "another server @ ..." to see the database connection pool usage and Hibernate sessions over the past two days (scroll down to "Hibernate Sessions").

If you prefer a local solution, check out p6spy. It has the capability of giving you a stack trace for each abandoned database connection. Alternately, it can show you the stack trace of each allocated JDBC connection. Of course, such stack traces are relatively expensive to make for each database operation, so you may want to disable that functionality once you solved your issues. :)

--
Kees Jan

http://java-monitor.com/forum/
kjkos...@kjkoster.org
06-51838192

Human beings make life so interesting. Do you know that in a universe so full of wonders, they have managed to invent boredom. Quite astonishing... -- Terry Pratchett


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to