Author |
Message
|
phaniIIB |
Posted: Tue Aug 30, 2016 7:17 am Post subject: MQInput to multiple MQOutput |
|
|
Acolyte
Joined: 28 Jul 2015 Posts: 51
|
Hi,
I have a simple use case. My message flow is 1 MQInput node and 2 MQOutput nodes. Data flows from MQInput to 2 MQOutput nodes. I have an issue. If one of the queues is running out of depth, then it stopped flowing the messages to other queue.
My requirement is that even if it fails to write to 1 of the queues, it should still write to the other queue. Can anyone help me. |
|
Back to top |
|
 |
Vitor |
Posted: Tue Aug 30, 2016 7:24 am Post subject: Re: MQInput to multiple MQOutput |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
phaniIIB wrote: |
My requirement is that even if it fails to write to 1 of the queues, it should still write to the other queue. Can anyone help me. |
- Publish the message to 2 subscribers
- Propagate the output tree in 2 separate units of work
- Pass my condolences to the people who start missing out on messages because their queue is full and ask them why they need the messages in the first place if it's no big deal that they don't get them _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
mqjeff |
Posted: Tue Aug 30, 2016 7:32 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Learning how to use the Knowledge Center is the best skill you can learn for working with Broker, MQ, or almost any other IBM product.
It will allow you to answer questions in a minute or less, rather than taking the time to post here and then the time to wait for an answer. _________________ chmod -R ugo-wx / |
|
Back to top |
|
 |
Vitor |
Posted: Tue Aug 30, 2016 7:43 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
mqjeff wrote: |
Learning how to use the Knowledge Center is the best skill you can learn for working with Broker, MQ, or almost any other IBM product.
It will allow you to answer questions in a minute or less, rather than taking the time to post here and then the time to wait for an answer. |
But posting the questions here and waiting does allow for  _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
phaniIIB |
Posted: Tue Aug 30, 2016 9:03 am Post subject: |
|
|
Acolyte
Joined: 28 Jul 2015 Posts: 51
|
Thank you all for your responses. |
|
Back to top |
|
 |
Craig B |
Posted: Mon Sep 19, 2016 10:01 pm Post subject: |
|
|
Partisan
Joined: 18 Jun 2003 Posts: 316 Location: UK
|
If you have multiple destinations and your application is not concerned if each destination gets the output message, then as a previous response mentions, you are probably more interested in Pub/Sub capability. If you do not want to go down the pub sub route.
If you were wanted to stick with the simple route, then a FlowOrder node with a TryCatch node on each path would catch the exception so you can handle it and allow the second FlowOrder path to try the second queue.
If you only want to tolerate the MQRC_QUEUE_FULL (2053), then you can use a simple compute node with an ESQL ERROR HANDLER. That way you can query a simple variable that a 2053 occurred without having to traverse the exception list. The compute node has multiple output terminals and so you your two MQOutput nodes can be wired to "out" and "out1" and the PROPAGATE statement can be used to try one and then the other catering for the 2053 with the ERROR HANDLER.
If in the future you may want to have more than two destinations (without using Pub/Sub) then consider using a single MQOutput node with a DestinationList. The destinationList can be populated with many destination names and the MQOutput node will attempt to put to all destinations before reporting any errors. _________________ Regards
Craig |
|
Back to top |
|
 |
|