Redeployment Blocks MDB when Retrying to Connect to Unreachable JMS Destination (Doc ID 1618090.1)

Last updated on DECEMBER 05, 2016

Applies to:

Oracle WebLogic Server - Version 10.3.6 and later
Information in this document applies to any platform.

Symptoms

With lot of Proxy Service (PS) with JMS transport, this timeout needs to be set: -Dweblogic.connectTimeout=2.

This avoids Oracle Service Bus (OSB) console to hang when importing a project with some JMS End-Points non-reachable due to firewall configuration.

This timeout solved the issue, but a new one is found:

When trying to execute a "Find&Replace" operation to replace the non-reachable end-point for a reachable one, it takes a lot of time.

Here is the way to reproduce this new issue:


  1- Import an OSB project with only 4 PS JMS transport configured.
  2- Replace the right End-Points for some non - reachable ones due to firewall rules --> this operation takes around 15 seconds
  3- Replace the non-reachable URI for the right ones --> This operation takes more than 3 minutes.
  4- If we repeat this operation several times, the step 3 is taking more and more time

WLS engineers have been working in this issue to understand this behavior.

1- As it is a MDB, WLS is trying to reconnect to the non - reachable URI every 10 seconds.
2- Due to -Dweblogic.connectTimeout=2, the step 1 is getting an exception, so WLS executes8 additional retries, waiting 2 seconds for the timeout for each one.
3-. There is a unique thread for all the MDB's, so as we have 4 PS (MDB's) WLS repeat this process 4 times until the OSB console finish the "find&replace" task.
4-. WLS increase the 10 seconds for the first timeout when it is not able to reconnect, this is the reason why the "find&replace" gets more time when you repeat it.

- If we stop MDB applications from the WLS console before the "Find&Replace" task, it takes only a few seconds.
- If we stop the MDB setting the PS as disabled in the OSB console, it takes a lot of time to stop it (probably it is using a gracefully stop) but the "find&Replace" operation is really fast.


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