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 » Mainframe, CICS, TXSeries » MQ Triggering CICS Transaction

Post new topic  Reply to topic
 MQ Triggering CICS Transaction « View previous topic :: View next topic » 
Author Message
coderunner
PostPosted: Thu Jun 28, 2007 5:26 am    Post subject: MQ Triggering CICS Transaction Reply with quote

Newbie

Joined: 21 Feb 2007
Posts: 7

I have a queue with a trigger type of Every, which causes a CICS transaction to be run to process the message in the queue. During the night CICS is closed, but messages could still be put ino the queue from other processes. When CICS is brought-up again in the morning there is an accumulation of messages in the queue. Can triggering be specified to process this backlog of messages?

I've read about triggering in the MQ Application Programming Guide, but it is not clear that what I require can be achieved.
Back to top
View user's profile Send private message
Mr Butcher
PostPosted: Thu Jun 28, 2007 5:32 am    Post subject: Reply with quote

Padawan

Joined: 23 May 2005
Posts: 1716

if cics comes up again and ckti is started, a trigger is generated for your queue if it contains messages. this is one of the trigger conditions (if the trigger monitor is started, and the initiation queue is opened, then mq checks if a local queue uses this initq and if all the trigger conditions are met, if so, a trigger is generated).

but - even if you specified trigger every - there is only one trigger message in this special case.

so your transaction is started, but you must make sure it is processing the whole queue.....
_________________
Regards, Butcher
Back to top
View user's profile Send private message
coderunner
PostPosted: Thu Jun 28, 2007 5:42 am    Post subject: Reply with quote

Newbie

Joined: 21 Feb 2007
Posts: 7

Thanks for your reply Mr. Butcher.
I'll try out the method you suggest. The CICS transaction I have written will processes all messages that have been put into the queue.
Cheers.
Back to top
View user's profile Send private message
Mr Butcher
PostPosted: Thu Jun 28, 2007 10:33 pm    Post subject: Reply with quote

Padawan

Joined: 23 May 2005
Posts: 1716

do you want your transaction to run parallel during normal processing? if not, you could use trigger first.

if trigger every and 10.000 messages will hit your queue, you will get 10.000 transactions at the "same time" (okay, not all at the same time but you will have many transactions running in parallel). if this is wanted, then you should at least limit the number of transactiony by a transaktion class to prevent cics from being flooded with transactions.
_________________
Regards, Butcher
Back to top
View user's profile Send private message
coderunner
PostPosted: Fri Jun 29, 2007 12:35 am    Post subject: Reply with quote

Newbie

Joined: 21 Feb 2007
Posts: 7

I've tested the solution where CKTI is started as CICS comes-up and it works, it started my transaction which processed the outstanding messages on the queue.
Also I do plan on having the transaction run in parallel with trigger Every. I am expecting a maximum throughput of 800 messages per hour, so I don't think this will flood CICS with concurrent transactions.
Thanks for the advice.
Back to top
View user's profile Send private message
Mr Butcher
PostPosted: Fri Jun 29, 2007 1:29 am    Post subject: Reply with quote

Padawan

Joined: 23 May 2005
Posts: 1716

in case of parallel processing - do not forget error situations. e.g. you have a sending mqseries, and the connection is broken. so messages pile up on this mq (because the application is still sending). now the connection is restored after some hours (the guy that did the bad firewall definition was shot) and now you get the 4000 messages from the last 5 hours within one go. now what will your cics do with 4000 transactions being triggered in a few seconds?
_________________
Regards, Butcher
Back to top
View user's profile Send private message
bob_buxton
PostPosted: Fri Jun 29, 2007 1:45 am    Post subject: Reply with quote

Master

Joined: 23 Aug 2001
Posts: 266
Location: England

coderunner wrote:
I've tested the solution where CKTI is started as CICS comes-up and it works, it started my transaction which processed the outstanding messages on the queue.
Also I do plan on having the transaction run in parallel with trigger Every. I am expecting a maximum throughput of 800 messages per hour, so I don't think this will flood CICS with concurrent transactions.
Thanks for the advice.

800 per hour is 13 per minute. Unless you expect the processing of each transaction to take in excess of 5 seconds you will not have a great deal of parallelism and you might as well define your transaction as trigger first with a get wait interval of around 5 seconds.
_________________
Bob Buxton
Ex-Websphere MQ Development
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 » Mainframe, CICS, TXSeries » MQ Triggering CICS Transaction
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.