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 » TIMEOUT CONTROL NODE

Post new topic  Reply to topic
 TIMEOUT CONTROL NODE « View previous topic :: View next topic » 
Author Message
mainframeboy
PostPosted: Mon Dec 06, 2010 6:01 am    Post subject: TIMEOUT CONTROL NODE Reply with quote

Newbie

Joined: 24 Oct 2009
Posts: 4

Environment
z/OS 1.12
MQ V7.0.1 LEVEL 005-001
WMB V7 FP1


TIMEOUT CONTROL NODE
I am in the process writing a common error flow with a TIMEOUT CONTROL NODE
This is most likely a user error but for the life of me I can't seem to get the TIMEPUT CONTROL NODE to delay the message by 60 seconds. I hope that this is not a stupid question, but I am stuck.

The flow is as follows

MQGET
|
TRACE
|
COMPUTE
|
TRACE
|
TIMEOUT CONTROL NODE
|
TRACE


The COMPUTE NODE contains the following:
CREATE COMPUTE MODULE JMSFlow_Compute
CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN
CALL CopyEntireMessage();
SET OutputRoot.XML.TimeoutRequest.Identifier = 'TIME1234';
SET OutputRoot.XML.TimeoutRequest.Action = 'SET';
SET OutputRoot.XML.TimeoutRequest.StartTime =
cast(CURRENT_TIMESTAMP + INTERVAL '60' second as char format 'HH:mm:ss');
RETURN TRUE;
END;

CREATE PROCEDURE CopyEntireMessage() BEGIN
SET OutputRoot = InputRoot;
END;
END MODULE;

The TIMEOUT CONTROL NODE contains the following attributes:
Unique Identifer: TIME1234
Request Location: InputRoot.XML.TimeoutRequest

Trace from MQGET
TIME 21:31:18.231770
(0x01000021:Name+):MRM = ( ['mrm' : 0x1ab26f08]
(0x0300000B:NameValue+):VERSION = 2 (INTEGER)
(0x01000013:Name+ ):CUSTOMER_NAME = (
(0x0300000B:NameValue+):N_FIRST = 'Ed' (CHARACTER)
(0x0300000B:NameValue+):N_LAST = 'Fletcher' (CHARACTER)
)
(0x01000013:Name+ ):CUSTOMER_ADDRESS = (
(0x0300000B:NameValue+):A_LINE = 'Mail Point 135' (CHARACTER)
(0x0300000B:NameValue+):A_LINE = 'Hursley Park' (CHARACTER)
(0x0300000B:NameValue+):TOWN = 'Winchester' (CHARACTER)
(0x0300000B:NameValue+):ZIP = 'SO21 2JN' (CHARACTER)
(0x0300000B:NameValue+):COUNTRY = 'UK' (CHARACTER)
)
(0x01000013:Name+ ):COMPLAINT = (
(0x0300000B:NameValue+):C_TYPE = 'Delivery' (CHARACTER)
(0x0300000B:NameValue+):C_REF = 'XYZ123ABC' (CHARACTER)
(0x0300000B:NameValue+):C_TEXT = 'I placed an order on 15-11-99, well in time for Christmas and I still have not had a delivery schedule sent to me. Please cancel the order and refund me NOW. X' (CHARACTER)
)

Trace from COMPUTE
TIME 21:31:18.235309
(0x01000021:Name+ ):MRM = ( ['mrm' : 0x19ba2620]
(0x0300000B:NameValue+):VERSION = 2 (INTEGER)
(0x01000013:Name+ ):CUSTOMER_NAME = (
(0x0300000B:NameValue+):N_FIRST = 'Ed' (CHARACTER)
(0x0300000B:NameValue+):N_LAST = 'Fletcher' (CHARACTER)
)
(0x01000013:Name+ ):CUSTOMER_ADDRESS = (
(0x0300000B:NameValue+):A_LINE = 'Mail Point 135' (CHARACTER)
(0x0300000B:NameValue+):A_LINE = 'Hursley Park' (CHARACTER)
(0x0300000B:NameValue+):TOWN = 'Winchester' (CHARACTER)
(0x0300000B:NameValue+):ZIP = 'SO21 2JN' (CHARACTER)
(0x0300000B:NameValue+):COUNTRY = 'UK' (CHARACTER)
)
(0x01000013:Name+ ):COMPLAINT = (
(0x0300000B:NameValue+):C_TYPE = 'Delivery' (CHARACTER)
(0x0300000B:NameValue+):C_REF = 'XYZ123ABC' (CHARACTER)
(0x0300000B:NameValue+):C_TEXT = 'I placed an order on 15-11-99, well in time for Christmas and I still have not had a delivery schedule sent to me. Please cancel the order and refund me NOW. X' (CHARACTER)
)
)
(0x01000010:ParserRoot):XML = ( ['xml' : 0x1ab374e8]
(0x01000000:Element):TimeoutRequest = (
(0x01000000:Element):Identifier = (
(0x02000000:pcdata): = 'TIME1234' (CHARACTER)
)
(0x01000000:Element):Action = (
(0x02000000:pcdata): = 'SET' (CHARACTER)
)
(0x01000000:Element):StartTime = (
(0x02000000:pcdata): = '21:32:18' (CHARACTER)
)
The StartTime is 60 seconds in advance

Trace TIMEOUT NODE
TIME 21:31:18.237666
(0x0100001B:Name+ ):MRM = ( ['mrm' : 0x19ba2620]
(0x0300000B:NameValue+):VERSION = 2 (INTEGER)
(0x01000013:Name+ ):CUSTOMER_NAME = (
(0x0300000B:NameValue+):N_FIRST = 'Ed' (CHARACTER)
(0x0300000B:NameValue+):N_LAST = 'Fletcher' (CHARACTER)
)
(0x01000013:Name+ ):CUSTOMER_ADDRESS = (
(0x0300000B:NameValue+):A_LINE = 'Mail Point 135' (CHARACTER)
(0x0300000B:NameValue+):A_LINE = 'Hursley Park' (CHARACTER)
(0x0300000B:NameValue+):TOWN = 'Winchester' (CHARACTER)
(0x0300000B:NameValue+):ZIP = 'SO21 2JN' (CHARACTER)
(0x0300000B:NameValue+):COUNTRY = 'UK' (CHARACTER)
)
(0x01000013:Name+ ):COMPLAINT = (
(0x0300000B:NameValue+):C_TYPE = 'Delivery' (CHARACTER)
(0x0300000B:NameValue+):C_REF = 'XYZ123ABC' (CHARACTER)
(0x0300000B:NameValue+):C_TEXT = 'I placed an order on 15-11-99, well in time for Christmas and I still have not had a delivery schedule sent to me. Please cancel the order and refund me NOW. X' (CHARACTER)
)
)
(0x01000010:ParserRoot):XML = ( ['xml' : 0x1ab374e8]
(0x01000000:Element):TimeoutRequest = (
(0x01000000:Element):Identifier = (
(0x02000000:pcdata): = 'TIME1234' (CHARACTER)
)
(0x01000000:Element):Action = (
(0x02000000:pcdata): = 'SET' (CHARACTER)
)
(0x01000000:Element):StartTime = (
(0x02000000:pcdata): = '21:32:18' (CHARACTER)
)

From Reading the documentation only Identifer and Action are required and I have left everything else as default.

Thanks
Ben
Back to top
View user's profile Send private message
fatherjack
PostPosted: Mon Dec 06, 2010 6:19 am    Post subject: Re: TIMEOUT CONTROL NODE Reply with quote

Knight

Joined: 14 Apr 2010
Posts: 522
Location: Craggy Island

mainframeboy wrote:
for the life of me I can't seem to get the TIMEPUT CONTROL NODE to delay the message by 60 seconds.


Which message are you referring to here?
_________________
Never let the facts get in the way of a good theory.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Mon Dec 06, 2010 7:09 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

The message will be sent from a corresponding TimeoutNotification node, not to the out terminal of the TimeoutControl node.

Also, you will find that you do not get good performance if you try and delay a large number of messages, each one by 60 seconds, using Timeout nodes.
Back to top
View user's profile Send private message
mainframeboy
PostPosted: Mon Dec 06, 2010 4:08 pm    Post subject: Reply with quote

Newbie

Joined: 24 Oct 2009
Posts: 4

The input for the TIMEOUT CONTROL NODE:
XMLTimeoutRequest

TimeoutRequest field that in this test is separate to the main message, but is used by the TimeoutControl node to determine the requested timeout to be processed by the TimeoutNotification node. In this case, the starting date is not defined, they therefore take the default values of TODAY. The start time should be 60 seconds in the future as generated by the compute node.

This is not intended for high volume, rather only in error once every 3 months when a HTTP connection is down.

I am a little confused as the TimeoutCorntol Node is independent of the TimeoutNotification node
Back to top
View user's profile Send private message
fatherjack
PostPosted: Tue Dec 07, 2010 3:11 am    Post subject: Reply with quote

Knight

Joined: 14 Apr 2010
Posts: 522
Location: Craggy Island

mainframeboy wrote:
I am a little confused as the TimeoutCorntol Node is independent of the TimeoutNotification node


No it's not. They are linked together by the "Unique Identifier".
_________________
Never let the facts get in the way of a good theory.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Tue Dec 07, 2010 3:20 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Also note that TimeoutNotification is an *input* node, there's no way to connect it to the middle of a flow, and thus no way to "control" it based on the contents of a message.
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 » TIMEOUT CONTROL 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.