WebLogic Server (WLS) Support Pattern: Troubleshooting JMS Message Redelivery
(Doc ID 1203246.1)
Last updated on SEPTEMBER 12, 2023
Applies to:
Oracle WebLogic Server - Version 6.1 and later Information in this document applies to any platform.
Purpose
There are two aspects to redelivery of JMS messages. One aspect deals with messages getting redelivered when not expected and the other aspect deals with messages not getting redelivered when they are expected.
Problem Description
JMS messages are getting redelivered to receiver/subscriber multiple times. Once the message arrives at the JMS destination, the JMS server tries to deliver it to the available consumer(s) and waits for the acknowledgement. For whatever reason, if the JMS server could not receive the message acknowledgement, the JMS server redelivers the message. From the JMS server perspective, the JMS message is not considered "delivered" unless the JMS message is acknowledged. Symptoms include:
JMS Receiver's onMessage method is executed multiple times.
There might be a slow down in the server process due to a "poison message."
Poison messages are messages that a receiver must reject. Typically, a message is rejected due to a problem with the message itself, but a message may also be rejected due to a temporary resource outage.
Problem Troubleshooting
Please note that not all of the following items would need to be done. Some issues can be solved by only following a few of the items.
Troubleshooting Steps
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!