OSB 11g Fails to Pass / Set TTL Correctly
Last updated on NOVEMBER 03, 2016
Applies to:Oracle Service Bus - Version 220.127.116.11.0 and later
Information in this document applies to any platform.
On : 18.104.22.168.0 version, OSB Core Functionality
OSB fails to pass/set TTL correctly
The Time To Live (TTL) is not being set properly within OSB when Queue/Topic JMS resources did not have an override set (value set to -1 on queue/topic/templates).
OSB is supposed to take the JMS time stamp and if the connection factory has a TTL set, OSB is supposed to set the expiration to the JMS Timestamp + TTL.
Currently is not doing that. The patch given for bug 14116070, which was rolled into a merged patch (Bug # 14258381) never properly fixed the issue.
In debugging the original and merged patches, another issues was seen where if the producer did not set the TTL on a message, OSB never set the TTL on the message, even if the TTL on the connection factory being used by the producer had the TTL set
TTL being set up properly by a custom designed MDB
Steps to Reproduce
1.- Pass messages from producer into WLS/OSB cluster. Pause for consumption the queue (UDQ) being produced to. See JMS timestamp on message, but no expiration set on message EVEN WHEN TTL IS SET on Connection Factory being used to publish messages to.
2.- When TTL is set by a custom designed MDB, the TTL is not being updated properly within the system
Sign In with your My Oracle Support account
Don't have a My Oracle Support account? Click to get started
Million Knowledge Articles and hundreds of Community platforms