JMS Redelivery Delay Not Honoring for Container Managed Transactions (CMT) having Bean Pool Size > 1
(Doc ID 2656914.1)
Last updated on APRIL 13, 2020
Applies to:Oracle WebLogic Server - Version 22.214.171.124.0 and later
Information in this document applies to any platform.
An MDB configured with Initial and Max Bean Pool size >1 (ejb-jar.xml) does not honor the Redelivery Delay set on the JMS Resource like Queue/UDQ. If the Initial and Max Bean Pool size are set to 1, the Redelievry Delay works as expected. The issue happens only with the Container Managed Transactions (CMT) but not with the Bean Managed Transactions (BMT).
Description of the problem with an example:
(1) An MDB deployed consumes the Messages from the UDQ and then processes them.
(2) The MDB involves a transaction in its processing.
(4) UDQ is set with Redelivery Delay of 60 secs.
(5) MDB is configured with Initial and Max Bean Pool size as 5 and 10 respectively (ejb-jar.xml).
(6) When the transaction is rolled back, without waiting for 60 secs, the messages immediately gets involved into the transaction by MDB (basically MDB picks up the message without waiting for 60 secs for its transaction processing).
(7) When MDB Initial and Max Bean Pool size is set to 1, the Redelivery Delay feature works as expected.
(8) The problem appears only with the Container Managed Transactions but not with the Bean Managed Transactions.
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!
In this Document