Author |
Message
|
nelson |
Posted: Thu Oct 16, 2014 9:58 am Post subject: MQGet Issue |
|
|
 Partisan
Joined: 02 Oct 2012 Posts: 313
|
Hi All,
I'm working on IIB 9.0.0.1 and MQ 7.5.0.1.
I have a queue where the state of a series of transactions are stored, so when I want to know the status of all the transactions I have to read the queue and check some values within each message. As a result the flow returns a counter of successful transactions and failed transactions.
The way I figured out to achieve this behavior is to do a non destructive MQGet cycle (in fact, I have two MQGets, the first resets the browse cursor and the second don´t. Not sure if this is a good approach). The flow works fine, but when the queue has more than a hundred of messages throws an exception:
'Dequeued failed message. Propagating a message to the failure terminal'
After that the execution group is restarted and I have no idea why this is happening. I'm not sure if this is a MQ or an IIB issue. The complete exception tree is as follows:
Code: |
ExceptionList: ( ['MQROOT' : 0xa8db808]
(0x01000000:Name):RecoverableException = (
(0x03000000:NameValue):File = 'F:\build\slot1\S900_P\src\DataFlowEngine\MQLibrary\linklib\ImbMqInputNode.cpp' (CHARACTER)
(0x03000000:NameValue):Line = 2077 (INTEGER)
(0x03000000:NameValue):Function = 'ImbCommonInputNode::eligibleForBackout' (CHARACTER)
(0x03000000:NameValue):Type = 'ComIbmMQInputNode' (CHARACTER)
(0x03000000:NameValue):Name = 'assa/services/bancaseguros/vip/ConsultarEstadoEnvioCorreosVIP#FCMComposite_1_1' (CHARACTER)
(0x03000000:NameValue):Label = 'assa.services.bancaseguros.vip.ConsultarEstadoEnvioCorreosVIP.SVC.VIP.ESTADOENVIOCORREOS.REQ' (CHARACTER)
(0x03000000:NameValue):Catalog = 'BIPmsgs' (CHARACTER)
(0x03000000:NameValue):Severity = 3 (INTEGER)
(0x03000000:NameValue):Number = 2652 (INTEGER)
(0x03000000:NameValue):Text = 'Dequeued failed message. Propagating a message to the failure terminal' (CHARACTER)
)
) |
Any hint on this?
Kind regards. |
|
Back to top |
|
 |
smdavies99 |
Posted: Thu Oct 16, 2014 10:10 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
perhaps the QMGR MAXUMSGS is the limit you are hitting
http://www.mqseries.net/phpBB2/viewtopic.php?t=54144&sid=188f5774ea7cb5f399ed33c6981d6e86
You could reduce it to say 10 and see if the flow bombs out when there are more than 10 messages in the Queue. _________________ 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 |
|
 |
JosephGramig |
Posted: Thu Oct 16, 2014 11:12 am Post subject: |
|
|
 Grand Master
Joined: 09 Feb 2006 Posts: 1244 Location: Gold Coast of Florida, USA
|
I think I would stow those counts in GlobalCache and I'm assuming you need to know this count across EGs and Brokers. |
|
Back to top |
|
 |
zpat |
Posted: Thu Oct 16, 2014 11:26 pm Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
How are you looping in the flow?
If you are looping with a wiring loop then you will run out of stack space with more than a certain number of messages.
Use a propagate style of looping inside a compute node. _________________ Well, I don't think there is any question about it. It can only be attributable to human error. This sort of thing has cropped up before, and it has always been due to human error. |
|
Back to top |
|
 |
nelson |
Posted: Sat Oct 18, 2014 10:18 am Post subject: |
|
|
 Partisan
Joined: 02 Oct 2012 Posts: 313
|
zpat wrote: |
How are you looping in the flow?
If you are looping with a wiring loop then you will run out of stack space with more than a certain number of messages.
Use a propagate style of looping inside a compute node. |
@zpat, thanks a lot for your advice. It really helped me and the issue was solved with the propagate style within a compute node.
@smdavies and @JosephGramig the same for you, thanks for your hints. |
|
Back to top |
|
 |
|