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 IndexWebSphere Message Broker (ACE) SupportIssue with Timer nodes in Message broker v6.1

Post new topicReply to topic
Issue with Timer nodes in Message broker v6.1 View previous topic :: View next topic
Author Message
ranjith
PostPosted: Thu Jul 24, 2008 4:06 am Post subject: Issue with Timer nodes in Message broker v6.1 Reply with quote

Apprentice

Joined: 04 May 2004
Posts: 25

Timeout Control and Timeout Notification nodes are used in a flow where the input comes from a File Input node and the Timeout notification node works under 'Controlled' mode, the SET operation fails in the Timeout control node and giving the following exception in syslog

( mybrk.default ) The Timeout Notification Node 'timeout.TimeoutNotification' received a bad timeout request.
The node received a corrupt timeout request message.
This error can occur if the message stored by the corresponding Timeout Control node cannot be un-serialised. It can also occur if non-timeout control node messages have been put on the message store. Correct the incoming data.

Note:- The same scenario works fine when the input comes from a MQ input node
Back to top
View user's profile Send private message
AkankshA
PostPosted: Thu Jul 24, 2008 7:49 pm Post subject: Reply with quote

Grand Master

Joined: 12 Jan 2006
Posts: 1494
Location: Singapore

Just check if the header sequence is fine...

please paste your time out request code generation here...

can you verify that the message is present in S.B.T.Q when you u send the msg to Time Out control node and the delivery time has not yet arrived ??
_________________
Cheers
Back to top
View user's profile Send private message Visit poster's website
Qadeer_824
PostPosted: Wed Sep 17, 2008 1:02 am Post subject: Reply with quote

Acolyte

Joined: 04 Oct 2007
Posts: 59

Hi,
I am facing a similar problem here. It works perfectly fine in a flow where input comes from MQInput node. I have another flow where input again comes from MQInput node, but i get a bad timeout request error.
Here's how it happens:
1. Place a persistent message into the input queue (MQInput Node)
2. There is a compute node where based on some conditions i copy the full InputRoot Structure to OutputRoot.
3. A SOAPRequest node which tries to call a service but fails with a exception (note that its not a fault).
4. On the failure terminal, it goes to another compute node where i set the timeout request properties as below
Code:

      DECLARE JUMP INTERVAL;
      DECLARE START TIME;
      DECLARE now CHARACTER;
      
      SET JUMP = INTERVAL '30' SECOND;
      SET START = CURRENT_TIME + JUMP;
      SET Environment.Variables.TimeoutRequest.RM004FTP.Action='SET';
      SET Environment.Variables.TimeoutRequest.RM004FTP.Identifier='RM004FTP';
      SET Environment.Variables.TimeoutRequest.RM004FTP.StartTime=START;
      SET Environment.Variables.TimeoutRequest.RM004FTP.IgnoreMissed = FALSE;
      SET OutputRoot = InputRoot;
      SET OutputExceptionList = NULL;
      SET OutputRoot.MQRFH2.usr.InvokeWSFailureFlag = 'Y';

5. This is connected to the Timeout control node which happily passes the message to TimeoutNotification node after 30secs.
6. TimeoutNotification node then receives the message perfectly and passes it to the SOAP Request node again.
7. Again step 1 to 5 are repeated as the webservice is still down.
8. On step 6 this time, i get an error saying that the notification node has received a bad timeout notification.

I checked the SYSTEM.BROKER.TIMEOUT.QUEUE for message content during the wait time and got this:
when it sent timeout notification for first time, it had the follwing header:
Code:

^"RM004FTPWSGENERICROOT.MQHMD`000000000000000000000000000000000000000000000000XMLNSCA2JTTE4002001"CreateFTPResponseXML12008-09-1706:57:57.663789MD  ÿÿÿÿ"¸MQHRF2  AMQ MQBRK61D    q@ÍH ?                                                MQBRK61D                                        mqbrk61d    yãüSúO/å;+                                I\6.1\bin\DataFlowEngine.exe2008091510502566    ÿÿÿÿRFH  "¸MQSTR   ¸d

When it sent timeout notification for second time, it had the following header (Note that MQHMD is now missing):
Code:

T"RM004FTPWSGENERICROOT`000000000000000000000000000000000000000000000000XMLNSCA2JTTE4002001"CreateFTPResponseXML12008-09-1706:59:04.650399MD  ÿÿÿÿ"¸MQHRF2  AMQ MQBRK61D    q@ÍH ?                                                MQBRK61D                                        mqbrk61d    yãüSúO/å;+                                I\6.1\bin\DataFlowEngine.exe2008091510502566    ÿÿÿÿRFH  "¸MQSTR   ¸d


I have captured header for other flows where this works perfectly fine. The header content is always (except for the change in time etc):
Code:

T"RM001FTPGENERICROOT.MQHMD`000000000000000000000000000000000000000000000000MRMMIOHFSC002001 Line_Description.Text12008-09-1708:07:45.934506MD  ÿÿÿÿ"¸MQHRF2  ÿÿÿÿÿÿÿÿRFH ”"¸MQSTR   ¸`


I am not sure what is hapenning. Only thing i could observe is that MQHMD in the header is lost when it sends notification for second time, which corrupts the message!

Can someone please advice what can be done?
Back to top
View user's profile Send private message Yahoo Messenger
broker_new
PostPosted: Tue Nov 18, 2008 5:50 pm Post subject: Reply with quote

Yatiri

Joined: 30 Nov 2006
Posts: 614
Location: Washington DC

Has anyone implemented triggering the message flow at particular time (not timeintervals).

My requirement is like i have to trigger the message flow at 10:00PM daily.
I searched in the forum and infocenter everywhere it tells about the time intervals,put a message to timeoutnotification node.


http://www-128.ibm.com/developerworks/websphere/library/techarticles/0603_schutz/0603_schutz.html


Without putting the message can broker by itself trigger the message flow at particular times(10:00 PM) and even if the broker is bounced it should start the flow without any manual intervention.
_________________
IBM ->Let's build a smarter planet
Back to top
View user's profile Send private message
sridhsri
PostPosted: Wed Nov 19, 2008 8:04 am Post subject: Reply with quote

Master

Joined: 19 Jun 2008
Posts: 297

Well, you could try using a start time (10:00 PM) and an interval of 86400 seconds (= 24 hrs). This will ensure that the flow works only once every 24 hours at 10:00 PM.

Now for the second part, have another TNN->Compute->TCN. This TNN should be set to automatic with an interval of 1 short of 1 million (which is a pretty long interval). But as soon as the flow is deploy, this TNN will start. In the compute you could create a Timeout Request as mentioned before. The TCN wired to the compute will control a second TNN.
Back to top
View user's profile Send private message
broker_new
PostPosted: Wed Nov 19, 2008 8:15 am Post subject: Reply with quote

Yatiri

Joined: 30 Nov 2006
Posts: 614
Location: Washington DC

Excellent !!.
For the first time we can start the flow at specified time but what happens if broker is bounced do we need to start the flow at 10:00 PM again.

My mind always thinks in wrong direction.

Iam thinking of a cronjob execute some script put a trigger message on input queue and kickoff the flow.

Which would be better do you think
_________________
IBM ->Let's build a smarter planet
Back to top
View user's profile Send private message
TonyD
PostPosted: Wed Nov 19, 2008 1:17 pm Post subject: Reply with quote

Knight

Joined: 15 May 2001
Posts: 540
Location: New Zealand

You do not need a Cron job.

There was a very good discussion paper re timer nodes when 6.0 was released that is still applicable and that should answer your questions:

http://www-128.ibm.com/developerworks/websphere/library/techarticles/0603_schutz/0603_schutz.html

I prefer to get my timer-initiated flows to reset their scheduled start time every hour ... the overhead is minimal.
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:
Post new topicReply to topic Page 1 of 1

MQSeries.net Forum IndexWebSphere Message Broker (ACE) SupportIssue with Timer nodes in Message broker v6.1
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.