Author |
Message
|
mrgate |
Posted: Mon Jul 23, 2007 5:31 am Post subject: MQGET node problem |
|
|
 Centurion
Joined: 28 Feb 2007 Posts: 141 Location: India
|
Hi guys,
I am working on mb6.0 with platform as windows2000. I am working on a sample scenario where the flow looks like this.
The first flow is:
mqinput node(1)---->compute node(1)---->mqoutput node(1)----->mqget node---->compute node(3)------>mqoutput node(3)
In this flow the queues used are :
1.INPUT(at mqinput node(1))
2.OUTPUT(at mqoutput node(1))
3.GET.INPUT(at mqget node)
4. GET.OUTPUT(at mqoutput node(3))
esql code used in compute node(1) is to copy entire message to output and esql code used in compute node(3) is to copy entire message to output.
The second flow is:
mqinput node(2)----->compute node(2)----->mqoutput node(2)
In this flow the queues used are :
1.OUTPUT(at mqinput node(2))
2.GET.INPUT(at mqoutput node(2))
esql code used in the compute node(2) is to generate a new message and copy message headers.
Here what I am doing is that the message passes from mqinput node(1) to compute node(1) and to mqoutput node(1), now the message goes to second flows mqinput node(2) and generates new message in compute node(2) and the message was sent to mqoutput node(2).
Now, mqget node picks the message sent to mqoutput node(2) and then sends the message to compute node(3) and then to mqoutput node(3).
Now, what is the problem is that the data was sent upto mqoutput node(2) and mqget node is not picking the message.
can anyone help me in solving the problem. |
|
Back to top |
|
 |
EddieA |
Posted: Mon Jul 23, 2007 9:48 am Post subject: |
|
|
 Jedi
Joined: 28 Jun 2001 Posts: 2453 Location: Los Angeles
|
What options are set on the MQGet. Are you trying to "match" the message via MessageID or CorrelationID.
How long are you waiting for a message.
Put in some Trace Nodes, to ensure the message is being picked up, and output, by the 2nd flow.
Cheers, _________________ Eddie Atherton
IBM Certified Solution Developer - WebSphere Message Broker V6.1
IBM Certified Solution Developer - WebSphere Message Broker V7.0 |
|
Back to top |
|
 |
EddieA |
Posted: Mon Jul 23, 2007 9:51 am Post subject: |
|
|
 Jedi
Joined: 28 Jun 2001 Posts: 2453 Location: Los Angeles
|
Another thought. What Transactionality do you have. Maybe the Output message from the 1st Flow hasn't been committed. So, the 2nd flow can never pick it up.
Cheers, _________________ Eddie Atherton
IBM Certified Solution Developer - WebSphere Message Broker V6.1
IBM Certified Solution Developer - WebSphere Message Broker V7.0 |
|
Back to top |
|
 |
mrgate |
Posted: Tue Jul 24, 2007 1:13 am Post subject: |
|
|
 Centurion
Joined: 28 Feb 2007 Posts: 141 Location: India
|
Hello EddieA,
I did not set any properties in the mqget node and the data from the first flow enters into the second flow because the data enters into the mqget nodes queue. so the transaction is being performed successfully. |
|
Back to top |
|
 |
AkankshA |
Posted: Tue Jul 24, 2007 1:20 am Post subject: |
|
|
 Grand Master
Joined: 12 Jan 2006 Posts: 1494 Location: Singapore
|
|
Back to top |
|
 |
EddieA |
Posted: Tue Jul 24, 2007 11:02 am Post subject: |
|
|
 Jedi
Joined: 28 Jun 2001 Posts: 2453 Location: Los Angeles
|
mrgate wrote: |
I did not set any properties in the mqget node |
Not even the Wait interval. Connect a Trace node to all the output terminals of the MQGet, and see if any of them "fire".
mrgate wrote: |
the data from the first flow enters into the second flow because the data enters into the mqget nodes queue. so the transaction is being performed successfully. |
How are you seeing this. The MQExplorer will show a queue depth of 1, even if the message hasn't been committed. Can you actually Browse the message at that point, before the MQGet times out.
Cheers, _________________ Eddie Atherton
IBM Certified Solution Developer - WebSphere Message Broker V6.1
IBM Certified Solution Developer - WebSphere Message Broker V7.0 |
|
Back to top |
|
 |
mrgate |
Posted: Tue Jul 31, 2007 4:37 am Post subject: |
|
|
 Centurion
Joined: 28 Feb 2007 Posts: 141 Location: India
|
Data from first flow was taken by the second flow because, the mqinput node of second flow will automatically trigger after the execution of first flow was ended. |
|
Back to top |
|
 |
AkankshA |
Posted: Tue Jul 31, 2007 8:06 pm Post subject: |
|
|
 Grand Master
Joined: 12 Jan 2006 Posts: 1494 Location: Singapore
|
Quote: |
Data from first flow was taken by the second flow because, the mqinput node of second flow will automatically trigger after the execution of first flow was ended. |
Quote: |
The first flow is:
mqinput node(1)---->compute node(1)---->mqoutput node(1)----->mqget node---->compute node(3)------>mqoutput node(3) |
In this first flow
the message gets posted to the OUTPUT queue. but here how shall mqget node know which msg to pick, from where to pick, how long to wait for msg etc etc...
for that u need to configure mqget node with requisite parameters  _________________ Cheers |
|
Back to top |
|
 |
|