ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » WMQIB V2.1 Retry Loop

Post new topic  Reply to topic
 WMQIB V2.1 Retry Loop « View previous topic :: View next topic » 
Author Message
dkeister
PostPosted: Mon Mar 07, 2005 2:59 pm    Post subject: WMQIB V2.1 Retry Loop Reply with quote

Disciple

Joined: 25 Mar 2002
Posts: 184
Location: Purchase, New York

I 'think' I understand the failure processing sequence of an MQInput node.

My situation.
- Message flow has Out and Catch terminal wired
- Dead letter queue defined but no backout count/queue

A 'bad' message is put to the queue and it ends up on the DLQ as expected.

The 'bad' message is put to the queue a second time and it ends up in a retry loop. At least that is what I think is going on. I am remote from the actual system.

Any ideas?


Dean Keister
Back to top
View user's profile Send private message Send e-mail Visit poster's website
jefflowrey
PostPosted: Mon Mar 07, 2005 3:09 pm    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

Add a throw node to the end of the flow on the catch terminal.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
dkeister
PostPosted: Tue Mar 08, 2005 6:14 am    Post subject: Reply with quote

Disciple

Joined: 25 Mar 2002
Posts: 184
Location: Purchase, New York

Not sure that will help. I thought that if neither the catch node nor the failure node is wired, the message would end up on the DLQ. Is this right?

I have a common subflow I use on the catch node. It decodes the error and puts it into a message which then is put to a queue being processed by a second flow that takes the message and sends an email (the sendmail flow is common across several applications) so I have first failure data capture. That way, in production, I get an email if there is any failure.

So, I don't think that the catch leg is ever executed. If I have it right, if there happens to be a problem on that leg (like the sendmail queue is full) the message should go to the SYSTEM.DEAD.LETTER.QUEUE with no need to wire a throw node.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
jefflowrey
PostPosted: Tue Mar 08, 2005 11:14 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

I believe that if the Catch path completes successfully, then the message will NOT have any sort of backout processing occur - like put it to the DLQ. The catch path completing would indicate a success on the MQInput, and thus a commit of the Get.

I know that if you don't rethrow out of the Catch flow, then the normal system logging of errors won't occur. So in cases where the message would normally pass to Fail after Catch, you won't get errors that tell you why it went to Catch in the first place.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
dkeister
PostPosted: Tue Mar 08, 2005 11:58 am    Post subject: Reply with quote

Disciple

Joined: 25 Mar 2002
Posts: 184
Location: Purchase, New York

I know if Catch completes successfully there is no backout processing since everything completes successfully and the GET is committed.

I think that if the Catch fails, the message should ultimately be backed out and sent to the DLQ, the Backout Q or thrown away.

I think that if I wire a TryCatch to the catch node with my 'normal failure processing' on the Try leg and wire a throw node to the catch terminal I would get errors that help identify the problem on the Catch processing (I'm confusing myself).

However, I think that if the Catch leg of the input node fails, a message should end up on the DLQ rather than enter a retry loop.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » WMQIB V2.1 Retry Loop
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.