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 IndexGeneral IBM MQ SupportTrigger Interval

Post new topicReply to topic
Trigger Interval View previous topic :: View next topic
Author Message
MarkDev
PostPosted: Thu Jan 08, 2004 1:21 pm Post subject: Trigger Interval Reply with quote

Newbie

Joined: 28 Jul 2003
Posts: 8

In a trigger first scenario, if a triggered application dies and the message is not pulled from the queue and the trigger interval passes, any new messages will trigger. What happens to the previous messages?
Back to top
View user's profile Send private message Send e-mail
mrlinux
PostPosted: Thu Jan 08, 2004 1:28 pm Post subject: Reply with quote

Grand Master

Joined: 14 Feb 2002
Posts: 1261
Location: Detroit,MI USA

Well if the trigger interval passes it will generate a new trigger message and your app should read the queue till empty.
_________________
Jeff

IBM Certified Developer MQSeries
IBM Certified Specialist MQSeries
IBM Certified Solutions Expert MQSeries
Back to top
View user's profile Send private message Send e-mail
MarkDev
PostPosted: Fri Jan 09, 2004 8:36 am Post subject: Reply with quote

Newbie

Joined: 28 Jul 2003
Posts: 8

What currently happens is any messages that were "stuck" in the queue are no longer there and do not show up in the DLQ. I was just wondering if those messages get permanently removed when the trigger interval passes and a new message is put.
Back to top
View user's profile Send private message Send e-mail
mrlinux
PostPosted: Fri Jan 09, 2004 8:59 am Post subject: Reply with quote

Grand Master

Joined: 14 Feb 2002
Posts: 1261
Location: Detroit,MI USA

No the only way messages are removed from a queue are

1) Application gets the message (Successfully)
2) Message Expires. Application sets expiry time in mqmd.
3) If message is non-persistend and qmgr is restarted

As for your description it sounds like you app is reading the message off the queue before it dies
_________________
Jeff

IBM Certified Developer MQSeries
IBM Certified Specialist MQSeries
IBM Certified Solutions Expert MQSeries
Back to top
View user's profile Send private message Send e-mail
oz1ccg
PostPosted: Sat Jan 10, 2004 1:37 am Post subject: Reply with quote

Yatiri

Joined: 10 Feb 2002
Posts: 628
Location: Denmark

Hmm, this was also the TRIGINT behavior I first thought of before I studiet the manual , but it seems to wok in this way:

You will get addional triggers generated when messages are put to the queue after the TRIGINT have expired, but only when the queue is not opend for INPUT, this means that no application have the queue opend for reading.

This also requires that the applications are well coded; I mean that the application itself have to issue MQCLOSE, and not trust some OS-termination routine to do the job, (because it may take a while before the OS does this, this is a low prio. job).

I'm typicly using TRIGINT(60000) on my queuemanagers as default (not changed), and I've never seen problems with well-degigned applications

Some snips from Application Programming Guide:
Quote:

Trigger condition 4:
For triggering of type FIRST or DEPTH, no program has the application queue open for removing messages (that is, the OpenInputCount local queue attribute is zero).

Special case of trigger type FIRST
With trigger type FIRST, if there is already a message on the application queue when another message arrives, the queue manager does not usually create another trigger message. However, the application serving the queue might not actually open the queue (for example, the application might end, possibly because of a system problem). If an incorrect application name has been put into the process definition object, the application serving the queue will not pick up any of the
messages. In these situations, if another message arrives on the application queue, there is no server running to process this message (and any other messages on the queue).
To deal with this, the queue manager creates another trigger message if another message arrives on the application queue, but only if a predefined time interval has elapsed since the queue manager created the last trigger message for that queue. This time interval is defined in the queue manager attribute TriggerInterval. Its default value is 999 999 999 milliseconds.
You should consider the following points when deciding on a value for the trigger interval to be used in your application:
- If TriggerInterval is set to a low value, and there is no application serving the application queue, trigger type FIRST might behave like trigger type EVERY (this depends on the rate that messages are being put onto the application queue, which in turn may depend on other system activity). This is because, if the trigger interval is very small, another trigger message is generated each time a message is put onto the application queue, even though the trigger type is FIRST, not EVERY. (Trigger type FIRST with a trigger interval of zero is equivalent to trigger type EVERY.)
- If a unit of work is backed out (see “Trigger messages and units of work”) and the trigger interval has been set to a high value (or the default value), one trigger message is generated when the unit of work is backed out. However, if you have set the trigger interval to a low value or to zero (causing trigger type FIRST to behave like trigger type EVERY) many trigger messages can be generated. If the unit of work is backed out, all the trigger messages are still made available. The number of trigger messages generated depends on the trigger interval, the maximum number being reached when trigger interval has
been set to zero.


Just my $0.02
_________________
Regards, Jørgen
Home of BlockIP2, the last free MQ Security exit ver. 3.00
Cert. on WMQ, WBIMB, SWIFT.
Back to top
View user's profile Send private message Send e-mail Visit poster's website MSN Messenger
Display posts from previous:
Post new topicReply to topic Page 1 of 1

MQSeries.net Forum IndexGeneral IBM MQ SupportTrigger Interval
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.