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 » General IBM MQ Support » MQ V 5.3 CSD08 - Triggering

Post new topic  Reply to topic Goto page 1, 2  Next
 MQ V 5.3 CSD08 - Triggering « View previous topic :: View next topic » 
Author Message
i.x
PostPosted: Fri Mar 04, 2005 2:44 pm    Post subject: MQ V 5.3 CSD08 - Triggering Reply with quote

Apprentice

Joined: 11 Aug 2004
Posts: 26

Hello guys,
i have a strange situation on my queue manager.

I put on the trigger if one message is in the queue a script is triggerd, which reads the message and put it to another queue.

It works all fine, but:
One time a day the triggering is not working correctly.
For example:
A message is put on the queue at 2:00 am , but the scripts is triggerd on 2:15 am... (about 15 minutes too late).

I don't see any errors for reading or putting the message, and no errors by script or MQ

Its really strange, because of its working all the time , until one time a day.. after the delay , all is working as designed...

I run MQ V5.3 (with CSD08) under Windows 2000 Server...

Do you have any idea, why the delay is coming up?
Its very important that the messages are in time.. (for other processes)...

Please help me, i dont have any idea
Thanks!
Back to top
View user's profile Send private message
csmith28
PostPosted: Fri Mar 04, 2005 2:54 pm    Post subject: Reply with quote

Grand Master

Joined: 15 Jul 2003
Posts: 1196
Location: Arizona

Odd, is there anything in the event logs?

Is there an AtJob or Sceduled task running at 02:00 that would monopolize the servers resources?
_________________
Yes, I am an agent of Satan but my duties are largely ceremonial.
Back to top
View user's profile Send private message
i.x
PostPosted: Fri Mar 04, 2005 3:11 pm    Post subject: Reply with quote

Apprentice

Joined: 11 Aug 2004
Posts: 26

csmith28 wrote:
Odd, is there anything in the event logs?

Is there an AtJob or Sceduled task running at 02:00 that would monopolize the servers resources?


no nothing in the logs...
and no schedulde tasks running...

i had a performance monitor running to see any cpu or memory uses.. but nothing... all is normal
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Fri Mar 04, 2005 3:40 pm    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

Is it possible that, although the message was PUT on the queue at 2:00, it was not committed until 2:15?
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
JT
PostPosted: Fri Mar 04, 2005 5:00 pm    Post subject: Reply with quote

Padawan

Joined: 27 Mar 2003
Posts: 1564
Location: Hartford, CT.

Quote:
A message is put on the queue at 2:00 am

How was the message put to the queue, i.e. remotely, client?
Back to top
View user's profile Send private message
i.x
PostPosted: Sat Mar 05, 2005 2:33 am    Post subject: Reply with quote

Apprentice

Joined: 11 Aug 2004
Posts: 26

@jefflowrey:

How do you mean commit? I get and put the message over a perl script that i wrote.
I looked now in the documentation and i found the follwing command "MQCMIT" - can this be the commit command?
btw if this is the problem, so all messages must have a delay or?

@JT:
The message was put over a remote queue manager into a local queue of my queue manager.
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Sat Mar 05, 2005 5:36 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

If the message came from a remote queue manager, rather than directly from an application, then the problem most likely was with the channel or the network.

Just because the message was put to the remote queue at 2:00 doesn't mean it will show up on the local queue at 2:00 - EVER.

Also, it could simply be that the clock on the local queue manager is 15 minutes faster than the clock on the remote qm.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
i.x
PostPosted: Sat Mar 05, 2005 5:41 am    Post subject: Reply with quote

Apprentice

Joined: 11 Aug 2004
Posts: 26

jefflowrey wrote:
If the message came from a remote queue manager, rather than directly from an application, then the problem most likely was with the channel or the network.

Just because the message was put to the remote queue at 2:00 doesn't mean it will show up on the local queue at 2:00 - EVER.

Also, it could simply be that the clock on the local queue manager is 15 minutes faster than the clock on the remote qm.


hello,
no this is definitly not the problem, because i see the message in the local queue of my queue manager, and after about 15 minutes the message is in the other queue, where it should be put.

There is no problem with the network. The clock is also not the problem because i see the message in my local queue and the message is not put to the other remote queue (in my queue manager).

I also write a log for my script with a time stamp and so i see that is is put about 15 minutes after arrival... so the triggering is not working correctly
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Sat Mar 05, 2005 6:39 am    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

What do you mean with see?
Qdepth is not accurate as it contains uncommitted messages and all kind of messages that are not in a gettable state.
If you can browse the message it means that it is truely there.
As well if you have a process servicing the queue (gets oproc? in qs) then the trigger will not happen because your process is supposed to take care of the message.

Your delay may be caused by
a) time for process disconnecting from queue
b) qmgr trigint property.

If no process is servicing the queue and there is a message on it and the trigger monitor is running you will get another trigger generated at trigint interval (we have it set to 5 mins = 300,000)

Enjoy
Back to top
View user's profile Send private message Send e-mail
PeterPotkay
PostPosted: Sat Mar 05, 2005 7:56 am    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

fjb_saper wrote:
As well if you have a process servicing the queue (gets oproc? in qs) then the trigger will not happen because your process is supposed to take care of the message.


OPROCS can be > 0 without effecting trigger on first. But if IPROCS is 1 or higher, you will not get another trigger message for trigger on first queues until the IPROCS goes to zero. If IPROCS is 1 or higher, the QM assumes you have the queue open for MQGETs, so why waste a trigger message? Once IPROCS goes to 0, if at that point there is still a queue depth > 0, you will get retriggered.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Sat Mar 05, 2005 8:19 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

Let's agree on terms, first.

You have QMGR A and a QMGRB.
An application is connected to QMGRA and is trying to send a message to QMGRB.

QMGRA has a Remote Queue Definition called RQ1. This is the queue that the Application PUTs to. QMGRA also has XMITQB, which is the transmission queue for the sender channel to QMGRB.

RQ1 points to LQ1 on QMGRB.

LQ1 is a local queue on QMGRB.

Okay? So now there should be no confusion about local queues and remote queues.

When your application PUTS to RQ1, the message gets put on XMITQB. The channel then AT SOME POINT is started to move the message to LQ1 on QMGRB.

Then, after the message is moved, a trigger occurs on LQ1 and causes your other program to start.

You say that the PUT to RQ1 happens at 2:00, and the trigger on LQ1 happens at 2:15.

You say you have verified that the clock on QMGRA is NOT 15 minutes different than the clock on QMGRB.

You say that there is no delay in starting the channel between QMGRA and QMGRB after the message gets put on the XMITQB.

Is this all correct?
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
i.x
PostPosted: Sat Mar 05, 2005 8:30 am    Post subject: Reply with quote

Apprentice

Joined: 11 Aug 2004
Posts: 26

I mean with "see" , that i can browse the messages in the queue.

So i look at my mq properties and here is it:

Trigger Interval: 999999999
Maximum Uncommited messages: 10000
Maximum open handles: 256

The trigger type on my queue is "First"


@ jefflowrey:
Not to 100 percent:
Until this point it is all correct "You say that the PUT to RQ1 happens at 2:00, and the trigger on LQ1 happens at 2:15. "

The message which came from QMGRA lies in the LQ1 on QMGRB. (this all works perfect - i can broswe it too).
The LQ1 on QMGRB has a trigger which should run a process (PR1). The PR1 is a perl script, which should reads the message, create a file and move the message to anoter Queue.

The message is coming into LQ1 on 2:00 am (you can browse the messages) but the trigger is run at 2:15
The definition of LQ1 has the trigger type "first" and on
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Sat Mar 05, 2005 8:37 am    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

Before you browse the queue......

At 159 AM, what is the IPROCS count on LQ1?

What is the IPROCS count on LQ1 between 1:59 and 2:14AM?
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
i.x
PostPosted: Sat Mar 05, 2005 8:41 am    Post subject: Reply with quote

Apprentice

Joined: 11 Aug 2004
Posts: 26

PeterPotkay wrote:
Before you browse the queue......

At 159 AM, what is the IPROCS count on LQ1?

What is the IPROCS count on LQ1 between 1:59 and 2:14AM?


that's really dificullt to say, because the messages are coming from a supplier and not to a defined time. (and i am not looking all the time at the queue manager)
The 2:00 am and 2:15 am was only a example from me. It can also happend from 2:40 am to 3:00 or some other times :-/

Can you explain how i get the IPROCS under the MQ Explorer? and which effects this value have for the delay time?

--- edit
i only have this problems under win2k , not under AIX
Back to top
View user's profile Send private message
JT
PostPosted: Sat Mar 05, 2005 8:48 am    Post subject: Reply with quote

Padawan

Joined: 27 Mar 2003
Posts: 1564
Location: Hartford, CT.

Quote:
....and the trigger on LQ1 happens at 2:15. "

How are you determining this time? Is this the time you see the message leave LQ1 or is this the time that your Perl script is started or is this perhaps the time that the Perl script first logs the event, i.e. "I'm awake"?

Quote:
I also write a log for my script with a time stamp and so i see that is is put about 15 minutes after arrival... so the triggering is not working correctly

Just noticed this statement. How do you know it's not the script that's taking the 15 minutes? Results from previous executions of the Perl script may not accurately reflect the '2:00' run. Do you write a log event with a timestamp when the script 'gets' the message from LQ1? Is the data consistent?


Last edited by JT on Sat Mar 05, 2005 9:05 am; edited 1 time in total
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Goto page 1, 2  Next Page 1 of 2

MQSeries.net Forum Index » General IBM MQ Support » MQ V 5.3 CSD08 - Triggering
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.