ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Dymanically Setting Queue Name in MQGet Node

Post new topic  Reply to topic
 Dymanically Setting Queue Name in MQGet Node « View previous topic :: View next topic » 
Author Message
sarathmattam
PostPosted: Tue Jul 15, 2014 12:53 am    Post subject: Dymanically Setting Queue Name in MQGet Node Reply with quote

Voyager

Joined: 05 Sep 2008
Posts: 94

Dear All,

I am stuck with an issue with MQGet Node. Am using WMB 8.0.0.3 and MQ 7.5.

I have a message flow as below

MQ Input --> Timer Control node

Timer Notification --> MQ Header --> Compute-1 Node --> MQGet Node -->Compute-2 node --> MQ Output Node

I am setting the queue name in OutputLocalEnvironment in Compute-1 node and set the Compute mode property of the compute-1 node to LocalEnvironment and Message. But, when trying to read message from the queue, am getting an exception. I have gone through the previous posts here, and many of them points to the approach that I followed. I am copying the error part of the user trace below

Quote:
2014-07-15 12:49:18.007714 76064 UserTrace BIP4016I: Message propagated to terminal ''out'' of node 'com.emaratech.common.purge.queue.PurgeQueueMsgFlow.Get_Trans_Details_From_DB' with the following message trees: 'OutputLocalEnvironment, OutputRoot, InputExceptionList'.
2014-07-15 12:49:18.007854 76064 UserTrace BIP4635I: The MQ Get node 'com.emaratech.common.purge.queue.PurgeQueueMsgFlow.Purge_Profile_Msg' failed to navigate to the default location ''InputLocalEnvironment.MQ.GET.MQGMO'' for ''Input MQGMO Location (derived from Input MQ Parameters Location)''.
Location ''InputLocalEnvironment.MQ.GET.MQGMO'' is the default value for ''Input MQGMO Location (derived from Input MQ Parameters Location)'' and it was not found. It is assumed that this ''Input MQGMO Location (derived from Input MQ Parameters Location)'' node property is not needed in this case and, therefore, the issue is ignored.
Ignore this message (and the previous user trace message regarding this navigation, if there is one) if this ''Input MQGMO Location (derived from Input MQ Parameters Location)'' node property is not needed; Otherwise, make sure the location is available or correct the location specification.
2014-07-15 12:49:18.009124 76064 UserTrace BIP2231E: Error detected whilst processing a message in node 'com.emaratech.common.purge.queue.PurgeQueueMsgFlow.TimeoutNotification'.
The message broker detected an error whilst processing a message in node 'com.emaratech.common.purge.queue.PurgeQueueMsgFlow.TimeoutNotification'. The message has been augmented with an exception list and has been propagated to the node's failure terminal for further processing.
See the following messages for details of the error.
2014-07-15 12:49:18.009150 76064 RecoverableException BIP2230E: Error detected whilst processing a message in node 'com.emaratech.common.purge.queue.PurgeQueueMsgFlow.Get_Trans_Details_From_DB'.
The message broker detected an error whilst processing a message in node 'com.emaratech.common.purge.queue.PurgeQueueMsgFlow.Get_Trans_Details_From_DB'. An exception has been thrown to cut short the processing of the message.
See the following messages for details of the error.
2014-07-15 12:49:18.009162 76064 RecoverableException BIP2488E: ('com.emaratech.common.purge.queue.PurgeQueueMsgFlow_Get_Trans_Details_From_DB.Main', '35.6') Error detected whilst executing the SQL statement ''PROPAGATE TO TERMINAL 'out' FINALIZE DEFAULT DELETE DEFAULT;''.
The message broker detected an error whilst executing the given statement. An exception has been thrown to cut short the SQL program.
See the following messages for details of the error.
2014-07-15 12:49:18.009176 76064 RecoverableException BIP2230E: Error detected whilst processing a message in node 'com.emaratech.common.purge.queue.PurgeQueueMsgFlow.Purge_Profile_Msg'.
The message broker detected an error whilst processing a message in node 'com.emaratech.common.purge.queue.PurgeQueueMsgFlow.Purge_Profile_Msg'. An exception has been thrown to cut short the processing of the message.
See the following messages for details of the error.
2014-07-15 12:49:18.009188 76064 RecoverableException BIP4633E: An error occurred whilst performing an MQGet node operation.
N/A.
See the following messages for information pertaining to this error.
2014-07-15 12:49:18.009198 76064 RecoverableException BIP2110E: Message broker internal program error.
An internal software error has occurred in the message broker. Further messages will indicate the effect of this error on the broker's transactions. There is no diagnostic information associated with this message
Shutdown and restart the message broker. If the problem continues to occur, then restart the system. If the problem still continues to occur contact your IBM support center.
2014-07-15 12:49:18.009536 76064 UserTrace BIP2638I: The MQ output node 'com.emaratech.common.purge.queue.PurgeQueueMsgFlow.MQ Output' attempted to write a message to queue ''VSN.QMGR.DLQ'' connected to queue manager ''''. The MQCC was '0' and the MQRC was '0'.
2014-07-15 12:49:18.009562 76064 UserTrace BIP2622I: Message successfully output by output node 'com.emaratech.common.purge.queue.PurgeQueueMsgFlow.MQ Output' to queue ''VSN.QMGR.DLQ'' on queue manager ''''.



Regards,
Sarath
Back to top
View user's profile Send private message
Vitor
PostPosted: Tue Jul 15, 2014 4:42 am    Post subject: Re: Dymanically Setting Queue Name in MQGet Node Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

sarathmattam wrote:
I am setting the queue name in OutputLocalEnvironment in Compute-1 node


The software appears to disagree with you:

sarathmattam wrote:
2014-07-15 12:49:18.007854 76064 UserTrace BIP4635I: The MQ Get node 'com.emaratech.common.purge.queue.PurgeQueueMsgFlow.Purge_Profile_Msg' failed to navigate to the default location ''InputLocalEnvironment.MQ.GET.MQGMO'' for ''Input MQGMO Location (derived from Input MQ Parameters Location)''.


So while you claim to be setting the queue name, and the trace confirms you're passing LocalEnvironment down the line, the MQGet node is not finding it. Time for a Trace node and a game of hunt the fat fingered mistake I think....

Certainly your method is sound & there's no technical reason it shouldn't work.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
sarathmattam
PostPosted: Tue Jul 15, 2014 11:01 pm    Post subject: Reply with quote

Voyager

Joined: 05 Sep 2008
Posts: 94

Hi Vitor, Thanks for your reply

I tried connecting a trace node between Compute-1 node and MQGet and I can see that the value is being passed to the MQGet node.

Also, If am not wrong, the line which you have quoted will appear in trace even if I am setting the queue name on the node level (not using LocalEnvironment). Because, when I tried by setting the queue name at the node, the node still checks the presence of MQGMO and if not found, it discards it. I believe this is expected behaviour. Please correct if my understanding is wrong.

Regards,
Sarath
Back to top
View user's profile Send private message
Vitor
PostPosted: Wed Jul 16, 2014 5:01 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

sarathmattam wrote:
I tried connecting a trace node between Compute-1 node and MQGet and I can see that the value is being passed to the MQGet node.


That's good.

sarathmattam wrote:
Also, If am not wrong, the line which you have quoted will appear in trace even if I am setting the queue name on the node level (not using LocalEnvironment). Because, when I tried by setting the queue name at the node, the node still checks the presence of MQGMO and if not found, it discards it. I believe this is expected behaviour. Please correct if my understanding is wrong.


Quite correct - my point was that it's not finding it even though you claim (and have now apparently confirmed) that you're sending it. So there are 2 options:

- The queue name you supply is present in the LocalEnvironment but not at the location (which is case sensitive) that the node is looking at.
- There's a bug in the MQGet node.

A few moments reviewing your trace will confirm that the queue name is in exactly the correct path. Or not. From there your course of action will be clear.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
sarathmattam
PostPosted: Sat Jul 19, 2014 11:11 pm    Post subject: Reply with quote

Voyager

Joined: 05 Sep 2008
Posts: 94

Thanks Vitor. Your option-1 did the trick. It was indeed a case mismatch.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Dymanically Setting Queue Name in MQGet Node
Jump to:  



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
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.