On 4/30/2011 6:58 AM, chris derham wrote:
All,

What do you mean by "swapped out"?

Idle speculation in the face of a problem that I didn't really understand
:-(

69% of all threads are sleeping on a monitor.
Fully expected, since that's what they do when waiting for work to show up.

This might indicate they are waiting for some external
resource (e.g. database) which is overloaded or not
available
You don't need to speculate;

I wasn't speculating - both lines were a quote from thread dump analyzer.

Using removeAbandoned and logAbandoned might be of interest.
...
More evidence of a broken app, not returning connections to the pool when
it's done with them.

Our code uses hibernate. We never touch connections directly. We ask
hibernate to execute some SQL, and it handles all the get/return connection.
Hence I was some what sceptical of this advice. However having followed this
user group for a few months now, I get that you know what you are talking
about. So I turned on the logging, and sure enough at one point during
initialization, we obtained a connection and didn't return it. So thanks for
pointing out that setting.

Finally managed to track the problem down to nested transactions -
apparently spring doesn't support them. Once removed the problem went away

Thanks for all your help

Chris

Glad you got it sorted out, and thanks for telling us what the problem was; it may save somebody else from the same headaches in the future.

D




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

Reply via email to