> Von: "Mark Thomas" <ma...@apache.org> > On 07/05/2013 10:25, Michael-O wrote: > > > >> Von: "Mark Thomas" <ma...@apache.org> 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 11.2.0.3 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? > > The important thing is that it isn't in WEB-INF/lib. > > > How do you know that this is not a false-positive? > > Experience, a lot of research into memory leaks and I wrote Tomcat's > memory leak detection code. > > > If you really know for sure, I can open a service > > request with Oracle Support. > > Good luck with that.
SR created. I will keep you updated. --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org