We've been experiencing horrendous OOMEs recently after deploying 40 clones
of a vendor's .war file which encompasses their application/portal.  The
context is about 100MB

Our customized piece of the puzzle is quite small.  We place the jTDS jar
for a quick database connection tha'ts made to their database, to
Tomcat/server/lib.
Then, we have 40 contexts for 40 customers, each one has its own WEB-INF/lib
folder with an identical set of class folders and jars etc etc.
When we deploy just ONE of these contexts onto our tomcat server,
eveything's "fine".

When we have 30, we need a daily restart, even though we never get more than
25 sessions to the database in that time …

My question is, does placing the jtds.jar in /server/lib cause an issue? I
know that it's bad practice to do this, and we're planning on refitting the
deployment and placing this in common/lib …

We're running a verbose:gc as well and have optimized to the best of our
ability xmx xms settings and evaluated the one JSP we have created as part
of the war package for leaks/finalizing objects properly.  I've read to
exhaustion all the OOME threads/memory leaks/ "tomcat's fine, it's your BAD
CODE" threads, but now question some of our deployment mechanics.

Thanks in advance !!

Reply via email to