Hi Christopher, I attachted some pictures of the threads.
Thx, Simone -----Ursprüngliche Nachricht----- Von: Christopher Schultz [mailto:ch...@christopherschultz.net] Gesendet: Mittwoch, 28. Oktober 2015 15:30 An: Tomcat Users List Betreff: Re: AW: Tomcat 6, DB2 Driver Problems Simone, On 10/28/15 4:02 AM, simone.rodenbach....@devk.de wrote: > I tried to google for the driver and classloader and found nothing that > helped me :-( > I can only provide you with this information: > > I configured the datasource in the context.xml > > <Resource name="jdbc/xxx" auth="Container" type="javax.sql.DataSource" > factory="org.apache.commons.dbcp.BasicDataSourceFactory" Why are you overriding Tomcat's default DataSourceFactory with another one? > maxActive="10" minIdle="2" maxIdle="10" maxWait="10000" > minEvictableIdleTimeMillis="120000" timeBetweenEvictionRunsMillis="60000" > username="xxx" > password="xxx" > driverClassName="com.ibm.db2.jcc.DB2Driver" > url="xxx;" > validationQuery="select 1 from sysibm.sysdummy1" /> > > > The spring bean > > <jee:jndi-lookup id="dataSource" jndi-name="java:/comp/env/jdbc/xxx" > expected-type="javax.sql.DataSource" /> > > I created a test project. Because oft hat I'm sure that I don't start a > thread. It doesn't have to be *your code* starting the thread directly. JDBC drivers have a habit of launching their own cleanup threads and then not offering any interface to stop them. > But the log says: > > Okt 28, 2015 8:41:15 AM org.apache.catalina.loader.WebappClassLoader > clearReferencesThreads > SCHWERWIEGEND: The web application [/test] appears to have started a thread > named [Timer-0] but has failed to stop it. This is very likely to create a > memory leak. > > I think this thread is started from > org.apache.commons.dbcp.BasicDataSourceFactory. Nope, BasicDataSourceFactory doesn't have the word "thread" anywhere in its code: http://svn.apache.org/viewvc/commons/proper/dbcp/tags/DBCP_1_4/src/java/org/apache/commons/dbcp/BasicDataSourceFactory.java?view=markup > I removed the db2cc4.jar to get an exception to inspect from where the driver > is loaded and got: > > Caused by: java.lang.ClassNotFoundException: com.ibm.db2.jcc.DB2Driver > at > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1858) > at > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1709) > at > org.apache.commons.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1420) That only tells you where the driver is loaded. It doesn't tell you when the thread was launched. After shutting-down your web application (and getting the warning about the Timer-0 thread), can you take a thread dump and show us the stack trace for the Timer-0 thread? -chris --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org Bitte denken Sie an die Umwelt. Müssen Sie diese E-Mail ausdrucken? Wichtiger Hinweis zum Schutz Ihrer Daten! Der Schutz von Kundendaten ist uns ein wichtiges Anliegen. Aus diesem Grund hat sich die DEVK freiwillig verpflichtet, die "Verhaltensregeln für den Umgang mit personenbezogenen Daten durch die deutsche Versicherungswirtschaft" (Code of Conduct) einzuhalten. Sie regeln die Erhebung, Verarbeitung und Nutzung von personenbezogenen Daten. Den vollen Wortlaut des Code of Conduct finden Sie unter www.devk.de/datenschutz.
--------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org