tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael-O <>
Subject Aw: Re: Possible false-postive with JreMemoryLeakPreventionListener and Tomcat's JDBC Pool
Date Tue, 07 May 2013 09:25:26 GMT

> Von: "Mark Thomas" <>
> On 07/05/2013 09:16, Michael-O wrote:
> > Hi folks,
> > 
> > I recently enabled a QueryTimeoutInterceptor with queryTimeout of 60 seconds in
a JDBC Pool data source (7.0.37). When the app was shut down, Tomcat said: "The web application
[/...] appears to have started a thread named [OracleTimeoutPollingThread] but has failed
to stop it..."
> > 
> > We are using Oracle 11.2g with JDBC drivers. I have figured out that this
thread is spawned by the driver itself. According to this Stackoverflow answer [1] this is
a long-living thread, same says the JDBC FAQ [2] of Oracle.
> > 
> > The thread seems to work like Pool's PoolCleaner thread. A few month a ago I reported
the same issue with the PoolCleaner thread and Filip fixed the class loader orders.
> > 
> > Can this be a false-positive by the memory leak detector since this thread lives
only once in the entire VM?
> No. It is a memory leak and either or bug in your application or in the
> JDBC driver.
> Where is the Oracle JDBC driver? CATALINA_[BASE|HOME]/lib or WEB-INF/lib

The driver is in the $CATALINA_HOME/lib only where $CATALINA_BASE != $CATALINA_HOME. This
was done for a single webapp for testing purposes.

Does this make a difference? How do you know that this is not a false-positive?
If you really know for sure, I can open a service request with Oracle Support.


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message