Deadlock Between weblogic.deployment.jms.JMSSessionPoolTester and weblogic.deployment.jms.JMSSessionPool (Doc ID 1644027.1)

Last updated on AUGUST 03, 2017

Applies to:

Oracle WebLogic Server - Version 9.2.1 to 10.3.2
Information in this document applies to any platform.

Symptoms

A Java level deadlock between weblogic.deployment.jms.JMSSessionPoolTester and weblogic.deployment.jms.JMSSessionPool is revealed in the WebLogic Server thread dump:

"[ACTIVE] ExecuteThread: '46' for queue: 'weblogic.kernel.Default (self-tuning)'":
at weblogic.deployment.jms.JMSSessionPoolTester.run(JMSSessionPoolTester.java:515)
- waiting to lock <0x07dca908> (a weblogic.deployment.jms.JMSSessionPoolTester)
- locked <0x07bfe8e0> (a weblogic.deployment.jms.JMSSessionPool)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

"[ACTIVE] ExecuteThread: '45' for queue: 'weblogic.kernel.Default (self-tuning)'":
at weblogic.deployment.jms.JMSSessionPool.checkClosed(JMSSessionPool.java:924)
- waiting to lock <0x07bfe8e0> (a weblogic.deployment.jms.JMSSessionPool)
at weblogic.deployment.jms.JMSSessionPool.getNonXASession(JMSSessionPool.java:465)
at weblogic.deployment.jms.JMSSessionPoolTester.sendQueueMessage(JMSSessionPoolTester.java:355)
at weblogic.deployment.jms.JMSSessionPoolTester.timerExpired(JMSSessionPoolTester.java:318)
- locked <0x07dca908> (a weblogic.deployment.jms.JMSSessionPoolTester)
at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

Changes

 

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms