Author |
Message
|
logonaniket |
Posted: Tue Jan 05, 2016 9:37 am Post subject: Why message not going on Dead Letter Queue? |
|
|
Novice
Joined: 12 Dec 2013 Posts: 17
|
Hi Guys
I have developed a flow like this
MQInput -> Compute -> MQOutput
MQInputQ -> INQ
MQOutputQ -> OUTQ
MQInput Catch Terminal -> CatchQ
MQInput Failure Terminal -> FailQ
MQOutput Failure Terminal -> OutFailQ
**InputQ has a BackoutQ named BackOutQ with backout threshold as 0.
**DeadLetterQ has been configured in the QMgr as SYSTEM.DEAD.LETTER.QUEUE
Now.. everything is working except the scenario mentioned below:
- When OUTQ is full or not present, flow tries to put the message to OutFailQ but
---OutFailQ is also full or not present, so flow goes to CATCH terminal and tries to push the message to CatchQ but
--------CatchQ is also full or not present, so flow goes to Failure Terminal and tries to push the message to FailQ but
------------FailQ is also full or not present so flow goes back to Input node and tries to push the message to BackOutQ but
------------------BackoutQ is not present or full
Now what happens?
What I want is that.. If BackOutQ is full, it should put the message to SYSTEM.DEAD.LETTER.QUEUE but it doesn't. Instead it keeps on trying to push the message to Failure terminal indefinitely....
Please  |
|
Back to top |
|
 |
Vitor |
Posted: Tue Jan 05, 2016 10:23 am Post subject: Re: Why message not going on Dead Letter Queue? |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
logonaniket wrote: |
What I want is that.. If BackOutQ is full, it should put the message to SYSTEM.DEAD.LETTER.QUEUE but it doesn't. Instead it keeps on trying to push the message to Failure terminal indefinitely.... |
Because you've wired the Failure terminal and hence told broker that you're want to handle the error.
What I think you need is a Try Catch node before the MQOutput node writing to FailQ, and a Compute node to RESIGNAL that you're giving up. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
logonaniket |
Posted: Tue Jan 05, 2016 11:03 pm Post subject: |
|
|
Novice
Joined: 12 Dec 2013 Posts: 17
|
Okay! But how will I trigger that I am giving up? What ESQL statement I have to write for that? |
|
Back to top |
|
 |
smdavies99 |
Posted: Tue Jan 05, 2016 11:21 pm Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
how do you throw any exception in ESQL? _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
logonaniket |
Posted: Tue Jan 05, 2016 11:29 pm Post subject: |
|
|
Novice
Joined: 12 Dec 2013 Posts: 17
|
|
Back to top |
|
 |
smdavies99 |
Posted: Tue Jan 05, 2016 11:31 pm Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
logonaniket wrote: |
Normal Throw Node! |
or the THROW ESQL statement. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
logonaniket |
Posted: Tue Jan 05, 2016 11:34 pm Post subject: |
|
|
Novice
Joined: 12 Dec 2013 Posts: 17
|
Just tested one scenario!
When Backout Queue is FULL, it sends the message to SYSTEM.DEAD.LETTER.QUEUE but
When Backout Queue does not exist then it gets stuck on the INPUT node itself! |
|
Back to top |
|
 |
smdavies99 |
Posted: Wed Jan 06, 2016 12:52 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
logonaniket wrote: |
Just tested one scenario!
When Backout Queue is FULL, it sends the message to SYSTEM.DEAD.LETTER.QUEUE but
When Backout Queue does not exist then it gets stuck on the INPUT node itself! |
does the Queue definiton still include the BOQ definition?
What errors are reported in the AMQERR01.Log file
A lot of the issues you are encountering will be accompanied by corresponding MQ errors. Why aren't you looking at them? We do. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
Vitor |
Posted: Wed Jan 06, 2016 5:36 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
logonaniket wrote: |
What ESQL statement I have to write for that? |
RESIGNAL _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
|