Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Duplicate
-
1.2.2
-
None
-
Operating System: All
Platform: All
-
34539
Description
re-open of DBCP-65... it ain't fixed yet
The GenericKeyedObjectPool$Evictor thread can still deadlock with dbcp
objects.
"Timer-1":
at org.apache.commons.dbcp.AbandonedTrace.addTrace(AbandonedTrace.java:175)
- waiting to lock <0x13cb66c0> (a org.apache.commons.dbcp.PoolableConnection)
at org.apache.commons.dbcp.AbandonedTrace.init(AbandonedTrace.java:92)
at org.apache.commons.dbcp.AbandonedTrace.<init>(AbandonedTrace.java:82)
at org.apache.commons.dbcp.DelegatingStatement.<init>(DelegatingStatement.java:61)
at org.apache.commons.dbcp.DelegatingConnection.createStatement(DelegatingConnection.java:224)
at org.apache.commons.dbcp.PoolableConnectionFactory.validateConnection(PoolableConnectionFactory.java:331)
at org.apache.commons.dbcp.PoolableConnectionFactory.validateObject(PoolableConnectionFactory.java:312)
at org.apache.commons.pool.impl.GenericObjectPool.evict(GenericObjectPool.java:1217) - locked <0x0af4d498> (a org.apache.commons.pool.impl.GenericObjectPool)
at org.apache.commons.pool.impl.GenericObjectPool$Evictor.run(GenericObjectPool.java:1341)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)
"extract_themes_from_message_command_container-2":
at org.apache.commons.pool.impl.GenericObjectPool.addObjectToPool(GenericObjectPool.java:1136) - waiting to lock <0x0af4d498> (a org.apache.commons.pool.impl.GenericObjectPool)
at org.apache.commons.pool.impl.GenericObjectPool.returnObject(GenericObjectPool.java:1076)
at org.apache.commons.dbcp.PoolableConnection.close(PoolableConnection.java:87) - locked <0x13cb66c0> (a org.apache.commons.dbcp.PoolableConnection)
at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.close(PoolingDataSource.java:181)
at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.closeConnection(LocalDataSourceConnectionProvider.java:96)
at org.hibernate.jdbc.ConnectionManager.closeConnection(ConnectionManager.java:451)
at org.hibernate.jdbc.ConnectionManager.aggressiveRelease(ConnectionManager.java:406)
at org.hibernate.jdbc.ConnectionManager.afterTransaction(ConnectionManager.java:293)
at org.hibernate.jdbc.JDBCContext.afterTransactionCompletion(JDBCContext.java:221)
at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:119)
at org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:606)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:709)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:678)
at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:140)
at net.tramposys.log.context.hibernate.HibernateLogContextManager.createOrAssociateLogContextWithJmsMessage(HibernateLogContextManager.java:68)
at sun.reflect.GeneratedMethodAccessor50.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198)
at $Proxy30.createOrAssociateLogContextWithJmsMessage(Unknown Source)
at net.tramposys.commandq.jms.JmsCommandExecutor.onMessage(JmsCommandExecutor.java:59)
at org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:531)
at org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:466)
at org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:435)
at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:316)
at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:235)
at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:927)
at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:851)
at java.lang.Thread.run(Thread.java:613)
Attachments
Issue Links
- is a clone of
-
DBCP-65 [dbcp] Deadlock when evicting dbcp objects (testWhileIdle=true)
- Closed