DeadLock when using WS-RM(WebServices Reliable Messaging) with SAF. (Doc ID 1285718.1)

Last updated on JUNE 09, 2016

Applies to:

Oracle Weblogic Server - Version: 10.3.1 and later   [Release: and later ]
Information in this document applies to any platform.

Symptoms


Found one Java-level deadlock:
=============================
"[ACTIVE] ExecuteThread: '319' for queue: 'weblogic.kernel.Default (self-tuning)'":
waiting to lock monitor 0x2c101a14 (object 0x056ff7f0, a weblogic.timers.internal.TimerThread),
which is held by "weblogic.timers.TimerThread" "weblogic.timers.TimerThread":
waiting to lock monitor 0x2c101874 (object 0x088aa0a0, a weblogic.messaging.saf.internal.ConversationAssembler),
which is held by "[ACTIVE] ExecuteThread: '319' for queue: 'weblogic.kernel.Default (self-tuning)'"



Java stack information for the threads listed above:
===================================================
"[ACTIVE] ExecuteThread: '319' for queue: 'weblogic.kernel.Default
(self-tuning)'": at weblogic.timers.internal.TimerManagerImpl.add(TimerManagerImpl.java:570)
- waiting to lock <0x056ff7f0> (a weblogic.timers.internal.TimerThread)
at weblogic.timers.internal.TimerManagerImpl.schedule(TimerManagerImpl.java:385)
at weblogic.timers.internal.TimerManagerImpl.schedule(TimerManagerImpl.java:331)
at weblogic.messaging.saf.internal.ConversationAssembler.rescheduleTransportRetr yTimer(ConversationAssembler.java:1579)
- locked <0x088aa0a0> (a weblogic.messaging.saf.internal.ConversationAssembler)
at weblogic.messaging.saf.internal.ConversationAssembler.rescheduleTransportRetryTimer(ConversationAssembler.java:1563)
at weblogic.messaging.saf.internal.ConversationAssembler.ensureStarted(ConversationAssembler.java:2121)
- locked <0x088aa0a0> (a weblogic.messaging.saf.internal.ConversationAssembler)
at weblogic.messaging.saf.internal.ConversationAssembler.access$2100(ConversationAssembler.java:83)
at weblogic.messaging.saf.internal.ConversationAssembler$TransportRetryTimerListener.timerExpired(ConversationAssembler.java:2481)
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)
"weblogic.timers.TimerThread":
at weblogic.messaging.saf.internal.ConversationAssembler.isCreated(ConversationA ssembler.java:2097)
- waiting to lock <0x088aa0a0> (a weblogic.messaging.saf.internal.ConversationAssembler)
at weblogic.messaging.saf.internal.ConversationAssembler.start(ConversationAssem bler.java:525)
at weblogic.messaging.saf.internal.ConversationAssembler.ensureStarted(ConversationAssembler.java:2111)
at weblogic.messaging.saf.internal.ConversationAssembler.access$2100(ConversationAssembler.java:83)
at weblogic.messaging.saf.internal.ConversationAssembler$TransportRetryTimerListener.timerExpired(ConversationAssembler.java:2481)
at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516)
at weblogic.work.SelfTuningWorkManagerImpl.scheduleInternal(SelfTuningWorkManagerImpl.java:175)
at weblogic.work.SelfTuningWorkManagerImpl.schedule(SelfTuningWorkManagerImpl.ja va:149)
at weblogic.timers.internal.TimerManagerFactoryImpl$WorkManagerExecutor.execute(TimerManagerFactoryImpl.java:132)
at weblogic.timers.internal.TimerManagerImpl.execute(TimerManagerImpl.java:622)
at weblogic.timers.internal.TimerThread$Thread.run(TimerThread.java:277)
- locked <0x056ff7f0> (a weblogic.timers.internal.TimerThread)


Message come to a standstill when using WebServices Reliable Messaging caused by a java level deadlock.

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