brunorozendo / log4jdbc-log4j2

Automatically exported from code.google.com/p/log4jdbc-log4j2
48 stars 39 forks source link

failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered. #35

Closed webgori closed 7 years ago

webgori commented 7 years ago

when i redeploy TestWeb.war file, project start fail. check following log please.

using log4jdbc-log4j2-jdbc4.1 version 1.16 tomcat 8.5.14 DBCP org.apache.tomcat.jdbc.pool, JNDI

17-Jun-2017 14:43:58.829 INFO [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.apache.catalina.startup.HostConfig.undeploy Undeploying context [/TestWeb]
17-Jun-2017 14:43:58.830 INFO [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.springframework.web.context.support.AnnotationConfigWebApplicationContext.doClose Closing WebApplicationContext for namespace 'appServlet-servlet': startup date [Sat Jun 17 14:43:17 KST 2017]; parent: Root WebApplicationContext
17-Jun-2017 14:43:58.831 INFO [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.springframework.context.support.DefaultLifecycleProcessor.stop Stopping beans in phase 2147483647
17-Jun-2017 14:43:58.853 INFO [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.springframework.web.context.support.AnnotationConfigWebApplicationContext.doClose Closing Root WebApplicationContext: startup date [Sat Jun 17 14:42:46 KST 2017]; root of context hierarchy
17-Jun-2017 14:43:58.854 INFO [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.springframework.context.support.DefaultLifecycleProcessor.stop Stopping beans in phase 2147483647
17-Jun-2017 14:43:58.863 WARNING [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc The web application [TestWeb] registered the JDBC driver [net.sf.log4jdbc.sql.jdbcapi.DriverSpy] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
17-Jun-2017 14:43:58.887 INFO [localhost-startStop-2] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive /usr/local/tomcat_8080/webapps/TestWeb.war
17-Jun-2017 14:44:00.241 WARNING [localhost-startStop-2] org.apache.naming.NamingContext.lookup Unexpected exception resolving reference
 java.lang.IllegalStateException: Timer already cancelled.
        at java.util.Timer.sched(Timer.java:397)
        at java.util.Timer.schedule(Timer.java:248)
        at org.apache.tomcat.jdbc.pool.ConnectionPool.registerCleaner(ConnectionPool.java:1402)
        at org.apache.tomcat.jdbc.pool.ConnectionPool.access$400(ConnectionPool.java:56)
        at org.apache.tomcat.jdbc.pool.ConnectionPool$PoolCleaner.start(ConnectionPool.java:1476)
        at org.apache.tomcat.jdbc.pool.ConnectionPool.initializePoolCleaner(ConnectionPool.java:532)
        at org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:452)
        at org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:154)
        at org.apache.tomcat.jdbc.pool.DataSourceProxy.pCreatePool(DataSourceProxy.java:118)
        at org.apache.tomcat.jdbc.pool.DataSourceProxy.createPool(DataSourceProxy.java:107)
        at org.apache.tomcat.jdbc.pool.DataSourceFactory.createDataSource(DataSourceFactory.java:560)
        at org.apache.tomcat.jdbc.pool.DataSourceFactory.getObjectInstance(DataSourceFactory.java:244)
        at org.apache.naming.factory.FactoryBase.getObjectInstance(FactoryBase.java:94)
        at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:321)
        at org.apache.naming.NamingContext.lookup(NamingContext.java:839)
        at org.apache.naming.NamingContext.lookup(NamingContext.java:159)
        at org.apache.naming.NamingContext.lookup(NamingContext.java:827)
        at org.apache.naming.NamingContext.lookup(NamingContext.java:173)
        at org.apache.catalina.core.NamingContextListener.addResource(NamingContextListener.java:1091)
        at org.apache.catalina.core.NamingContextListener.createNamingContext(NamingContextListener.java:661)
        at org.apache.catalina.core.NamingContextListener.lifecycleEvent(NamingContextListener.java:249)
        at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:94)
        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5105)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
        at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:952)
        at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1823)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)

17-Jun-2017 14:44:00.242 WARNING [localhost-startStop-2] org.apache.catalina.core.NamingContextListener.addResource Failed to register in JMX: javax.naming.NamingException: Timer already cancelled.
webgori commented 7 years ago

tomcat v8.5.14 bug, changed v8.5.14 to v8.0.32 solved