|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Issue with WebService Retry Logic - HTTPRequestNode |
« View previous topic :: View next topic » |
Author |
Message
|
geewee |
Posted: Wed Oct 31, 2012 3:04 am Post subject: Issue with WebService Retry Logic - HTTPRequestNode |
|
|
Apprentice
Joined: 31 Jul 2012 Posts: 28
|
Hello All,
We have a requirement of Retrying a SOAPRequest if WebService is down.
The logic is as below
1. A number of messages moved to error queue if web service not responding.
2. A retry is scheduled by a Timeout Notification Node.
3. The MQBrowse is using reset browse cursor=false within a loop in flow to iterate over all messages on queue.
4. MQBrowse is using rfh2-header info to decide whether it is time to retry the message.
Currently we use a loop in the flow and MQBrowse to scan all messages on queue. This gives execution group abend if number of messages ~500.
any suggestions on how to browse all messages on queue, without execution group abending.
BIP2161
Explanation
A broker process is terminating abnormally because its stack is full. For execution group processes, this may be caused by message flows containing loops or more than 500 nodes in series.
Code: |
( MYBRK.EXECGROUP ) Broker process terminating abnormally: The following diagnostic information will be required when contacting IBM: '
Severe Abend Error detected.
For full details see Abend File: ~\Application Data\IBM\MQSI\common\errors\MYBRK.EXECGROUP.8676.2656.Abend
A summary of the Error follows:
An Unhandled Exception detected in process 8676, on thread 0xA60.
Type: EXCEPTION_STACK_OVERFLOW (C00000FD).
Address: 0033:000007FEF4F54FA1.
Exception Parameters: 2
Param#0: 0x0000000000000001
Param#1: 0x000000000af63ff0
'.
A broker process is terminating abnormally.
Contact your IBM support center.
( MYBRK.EXECGROUP ) Broker process terminating abnormally (stack full): diagnostic information for IBM 'Severe Abend Error: A Stack overflow has occured, further logging may cause a double fault and will be attempted with caution. Abend Files and/or dumps may not be produced.
'.
A broker process is terminating abnormally because its stack is full. For execution group processes, this may be caused by message flows containing loops or more than 500 nodes in series. Otherwise the following information will be required when contacting IBM: 'Severe Abend Error: A Stack overflow has occured, further logging may cause a double fault and will be attempted with caution. Abend Files and/or dumps may not be produced.
'.
Check the definitions of all message flows deployed on the named execution group for loops and excessive path length. If this does not resolve the problem, contact your IBM support center.
|
|
|
Back to top |
|
 |
Vitor |
Posted: Wed Oct 31, 2012 5:03 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Why are you browsing the messages? Why not just read all the messages, process them if their time has come and return them to the queue if it has not? _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
geewee |
Posted: Wed Oct 31, 2012 5:24 am Post subject: |
|
|
Apprentice
Joined: 31 Jul 2012 Posts: 28
|
MQGet Node, property "Browse only"
This property controls whether a message is removed from the queue when it is read. If this check box is selected, the message is not removed from the queue when it is read. Select Browse only to specify that the message must be retained on the queue when it is read.
My plan was to leave message on queue, and only remove messages from queue when it is time for resending.
Inspired by the IBM example: "Browsing WebSphere MQ Queues sample"
Do you expect it to be more lightweight to do MQ Get rather than MQ Browse, leaving the flow to actually lift messages off queue, only to put back to queue. |
|
Back to top |
|
 |
Vitor |
Posted: Wed Oct 31, 2012 5:53 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
geewee wrote: |
Do you expect it to be more lightweight to do MQ Get rather than MQ Browse, leaving the flow to actually lift messages off queue, only to put back to queue. |
I do. Browse requires the creation and maintenance of a browse cursor (one reason the EG blows out with a deep browse). A Get does not. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
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
|
|
|
|