Service Bus 12c: Thread deadlock in 'java.util.concurrent.Semaphore$NonfairSync' (Doc ID 2159603.1)

Last updated on APRIL 13, 2017

Applies to:

Oracle Service Bus - Version 12.1.3.0.0 and later
Information in this document applies to any platform.

Symptoms

Under load the Service Bus instance becomes unresponsive due to all available threads being in a 'STUCK' state.  

Thread dumps show hundreds of threads with the following stack:

 

What's happening is that thread 13 has acquired the semaphore permit that thread 31 is waiting on.  At the same time, thread 31 has acquired the lock on ClientResponseTransportImpl that thread 13 is waiting on.  Hence, it's a 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