This discussion is archived
1 Reply Latest reply: Feb 4, 2013 12:39 PM by 653697 RSS

Message lost after rollback

929656 Newbie
Currently Being Moderated
I have three queues setup. A Base queue, Backout queue and a Hold queue.

A test application reads from Base queue and rollback() the session. After attempting to deliver the message two times, the JMS application sends the message to Backout queue after the third rollback().

My application (MsgRequeueApp) reads the message from Backout queue and waits for some time, adds some headers for its own use, sends the message again to Base Queue. The test application reads the re-queued message and rollback() three times. At the end of the third rollback(), the message is lost. I was expecting the message to go back to Backout Queue.

1. MsgRequeueApp does not log any new messages. So, it is not reading any new message.
2. I am monitoring the queues from weblogic's Admin console. The message is not present in Base Queue / Backout queue / Hold queue.

Note: There is a different logic that would send messages to Hold queue. But I am not testing that right now.

Here is the log after I enabled logging (Headers, Body)

---------

####<Feb 4, 2013 10:56:31 AM CST> <> <> <1359996991531> <116727> <> <> <SystemModule-0!TESTBOQ> <ConsumerCreate> <<anonymous>> <MC:CA(local):OAMI(DefaultServer.jms.connection19.session20.consumer22)> <> <>
####<Feb 4, 2013 10:56:31 AM CST> <> <> <1359996991552> <840437> <> <> <SystemModule-0!TESTBASEQ> <ConsumerCreate> <<anonymous>> <MC:CA(local):OAMI(DefaultServer.jms.connection23.session24.consumer26)> <> <>
####<Feb 4, 2013 11:05:11 AM CST> <BEA1-00037A05C5399E472B1E-574C53746F72655F44656661756C74446F6D61696E5F46696C6553746F72652D30> <> <1359997511266> <249265> <ID:<237345.1359997510782.0>> <> <SystemModule-0!TESTBASEQ> <Produced> <<anonymous>> <> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSDeliveryMode&gt;PERSISTENT&lt;/mes:JMSDeliveryMode&gt;&lt;mes:JMSExpiration&gt;0&lt;/mes:JMSExpiration&gt;&lt;mes:JMSPriority&gt;4&lt;/mes:JMSPriority&gt;&lt;mes:JMSRedelivered&gt;false&lt;/mes:JMSRedelivered&gt;&lt;mes:JMSTimestamp&gt;1359997510782&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;mes:Body&gt;&lt;mes:Text&gt;TestCase1&lt;/mes:Text&gt;&lt;/mes:Body&gt;&lt;/mes:WLJMSMessage&gt;> <>
####<Feb 4, 2013 11:05:22 AM CST> <> <> <1359997522152> <866698> <ID:<237345.1359997510782.0>> <> <SystemModule-0!TESTBASEQ> <Retry exceeded> <<WLS Kernel>> <> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSDeliveryMode&gt;PERSISTENT&lt;/mes:JMSDeliveryMode&gt;&lt;mes:JMSExpiration&gt;0&lt;/mes:JMSExpiration&gt;&lt;mes:JMSPriority&gt;4&lt;/mes:JMSPriority&gt;&lt;mes:JMSRedelivered&gt;true&lt;/mes:JMSRedelivered&gt;&lt;mes:JMSTimestamp&gt;1359997510782&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;mes:Body&gt;&lt;mes:Text&gt;TestCase1&lt;/mes:Text&gt;&lt;/mes:Body&gt;&lt;/mes:WLJMSMessage&gt;> <>
####<Feb 4, 2013 11:05:22 AM CST> <> <> <1359997522152> <885695> <ID:<237345.1359997510782.0>> <> <SystemModule-0!TESTBOQ> <Produced> <<WLS Kernel>> <> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSDeliveryMode&gt;PERSISTENT&lt;/mes:JMSDeliveryMode&gt;&lt;mes:JMSExpiration&gt;0&lt;/mes:JMSExpiration&gt;&lt;mes:JMSPriority&gt;4&lt;/mes:JMSPriority&gt;&lt;mes:JMSRedelivered&gt;false&lt;/mes:JMSRedelivered&gt;&lt;mes:JMSTimestamp&gt;1359997510782&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;mes:Body&gt;&lt;mes:Text&gt;TestCase1&lt;/mes:Text&gt;&lt;/mes:Body&gt;&lt;/mes:WLJMSMessage&gt;> <>
####<Feb 4, 2013 11:05:31 AM CST> <BEA1-00077A05C5399E472B1E-574C53746F72655F44656661756C74446F6D61696E5F46696C6553746F72652D30> <> <1359997531207> <716965> <ID:<237345.1359997530728.0>> <> <SystemModule-0!TESTBASEQ> <Produced> <<anonymous>> <> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSDeliveryMode&gt;PERSISTENT&lt;/mes:JMSDeliveryMode&gt;&lt;mes:JMSExpiration&gt;0&lt;/mes:JMSExpiration&gt;&lt;mes:JMSPriority&gt;4&lt;/mes:JMSPriority&gt;&lt;mes:JMSRedelivered&gt;false&lt;/mes:JMSRedelivered&gt;&lt;mes:JMSTimestamp&gt;1359997530728&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;mes:Body&gt;&lt;mes:Text&gt;TestCase1&lt;/mes:Text&gt;&lt;/mes:Body&gt;&lt;/mes:WLJMSMessage&gt;> <>
####<Feb 4, 2013 11:05:31 AM CST> <BEA1-00027A05C5399E472B1E-574C53746F72655F44656661756C74446F6D61696E5F46696C6553746F72652D30> <> <1359997531209> <972000> <ID:<237345.1359997510782.0>> <> <SystemModule-0!TESTBOQ> <Consumed> <<anonymous>> <MC:CA(local):OAMI(DefaultServer.jms.connection19.session20.consumer22)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSDeliveryMode&gt;PERSISTENT&lt;/mes:JMSDeliveryMode&gt;&lt;mes:JMSExpiration&gt;0&lt;/mes:JMSExpiration&gt;&lt;mes:JMSPriority&gt;4&lt;/mes:JMSPriority&gt;&lt;mes:JMSRedelivered&gt;false&lt;/mes:JMSRedelivered&gt;&lt;mes:JMSTimestamp&gt;1359997510782&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;mes:Body&gt;&lt;mes:Text&gt;TestCase1&lt;/mes:Text&gt;&lt;/mes:Body&gt;&lt;/mes:WLJMSMessage&gt;> <>
####<Feb 4, 2013 11:05:41 AM CST> <> <> <1359997541259> <230216> <ID:<237345.1359997530728.0>> <> <SystemModule-0!TESTBASEQ> <Retry exceeded> <<WLS Kernel>> <> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSDeliveryMode&gt;PERSISTENT&lt;/mes:JMSDeliveryMode&gt;&lt;mes:JMSExpiration&gt;0&lt;/mes:JMSExpiration&gt;&lt;mes:JMSPriority&gt;4&lt;/mes:JMSPriority&gt;&lt;mes:JMSRedelivered&gt;true&lt;/mes:JMSRedelivered&gt;&lt;mes:JMSTimestamp&gt;1359997530728&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;mes:Body&gt;&lt;mes:Text&gt;TestCase1&lt;/mes:Text&gt;&lt;/mes:Body&gt;&lt;/mes:WLJMSMessage&gt;> <>
####<Feb 4, 2013 11:05:41 AM CST> <> <> <1359997541259> <250889> <ID:<237345.1359997530728.0>> <> <SystemModule-0!TESTBOQ> <Produced> <<WLS Kernel>> <> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSDeliveryMode&gt;PERSISTENT&lt;/mes:JMSDeliveryMode&gt;&lt;mes:JMSExpiration&gt;0&lt;/mes:JMSExpiration&gt;&lt;mes:JMSPriority&gt;4&lt;/mes:JMSPriority&gt;&lt;mes:JMSRedelivered&gt;false&lt;/mes:JMSRedelivered&gt;&lt;mes:JMSTimestamp&gt;1359997530728&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;mes:Body&gt;&lt;mes:Text&gt;TestCase1&lt;/mes:Text&gt;&lt;/mes:Body&gt;&lt;/mes:WLJMSMessage&gt;> <>
####<Feb 4, 2013 11:05:41 AM CST> <BEA1-000A7A05C5399E472B1E-574C53746F72655F44656661756C74446F6D61696E5F46696C6553746F72652D30> <> <1359997541304> <943009> <ID:<237345.1359997530728.0>> <> <SystemModule-0!TESTBOQ> <Consumed> <<anonymous>> <MC:CA(local):OAMI(DefaultServer.jms.connection19.session20.consumer22)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSDeliveryMode&gt;PERSISTENT&lt;/mes:JMSDeliveryMode&gt;&lt;mes:JMSExpiration&gt;0&lt;/mes:JMSExpiration&gt;&lt;mes:JMSPriority&gt;4&lt;/mes:JMSPriority&gt;&lt;mes:JMSRedelivered&gt;false&lt;/mes:JMSRedelivered&gt;&lt;mes:JMSTimestamp&gt;1359997530728&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;mes:Body&gt;&lt;mes:Text&gt;TestCase1&lt;/mes:Text&gt;&lt;/mes:Body&gt;&lt;/mes:WLJMSMessage&gt;> <>


---------

Can someone help me figure out how I can debug what is going wrong here?
  • 1. Re: Message lost after rollback
    653697 Journeyer
    Currently Being Moderated
    Do you have a redelivery limit set on the producer or the destination? If you do, a message may be discarded once the limit is reached depends on your delivery-failure-params on the destination. You can configure to have the messages put into an error destination once they reach their redelivery limit.

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points