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 SupportHow to find and open a mq.ini file?

Post new topicReply to topic Goto page 1, 2, 3  Next
How to find and open a mq.ini file? View previous topic :: View next topic
Author Message
hdilsky1
PostPosted: Thu Feb 04, 2010 12:46 pm Post subject: Reply with quote

Novice

Joined: 04 Feb 2010
Posts: 10
Location: Dallas,TX

Vitor thank you so much for your response. Sorry, I didn't specify the OS.
Even your response is not very friendly (I understand the stress because of stupid questions like mine) I still would like to give you more info.
have a PROD problem. I noticed that local queue had maximum # of messages 5000. The Java program 1 sends a message to another program and if it didn't get response in 5 sec it sends another message to program 2. The message from program 2 came after 5 sec put in local queue. I want to remove old messages using the steps in this article:
http://www-01.ibm.com/support/docview.wss?rs=171&context=SSFKSJ&dc=DB520&uid=swg21288579&loc=en_US&cs=utf-8&lang=en.

So how to setup ExpiryInterval OS is Windows2003.

Thank you,

Henry
Back to top
View user's profile Send private message
hdilsky1
PostPosted: Thu Feb 04, 2010 12:51 pm Post subject: Reply with quote

Novice

Joined: 04 Feb 2010
Posts: 10
Location: Dallas,TX

Vital, I am sorry for placing my Q. in ReadFirst
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Feb 04, 2010 1:01 pm Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26015
Location: Texas, USA

hdilsky1 wrote:
So how to setup ExpiryInterval OS is Windows2003.


Well I've learned something - I thought ExpiryInterval was ignored on distributed platforms. This makes it a good day.

I stand by my previous comment - why do you want to set it? What's wrong with the default value (as specified in the link you posted)?

I should also point out

1) If the limit of 5000 messages on the local queue is so small that you feel the need to clear off old messages more quickly then you probably need to increase the 5000 message limit

2) If program 2 (in your example) reads the queue at any point either for the original message but too late, or for the next message this removes the old messages irrespective of the expiry interval. As the link you posted clearly says, ExpiryInterval is only relevant for periods where there is not MQGET activity

3) If (as I suspect) you've not set the messages to expire then no changes you make will have the slightest effect and the messages will remain on the queue.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
hdilsky1
PostPosted: Thu Feb 04, 2010 1:19 pm Post subject: Reply with quote

Novice

Joined: 04 Feb 2010
Posts: 10
Location: Dallas,TX

I suspect that ExpiryInterval setup to 0, which means message - never expired and I, also, suspect it should be setup in the program 1 (Java app running on WAS). First, I want to check the value of this parameter and then - to reset it to 900 (sec) because the program 1 does not care about messages older than 5 sec
Back to top
View user's profile Send private message
mvic
PostPosted: Thu Feb 04, 2010 1:27 pm Post subject: Reply with quote

Jedi

Joined: 09 Mar 2004
Posts: 2078

hdilsky1 wrote:
So how to setup ExpiryInterval OS is Windows2003.

Try:

Code:
amqmdain reg YOURQMNAME -c add -s TuningParameters -v ExpiryInterval=300
Back to top
View user's profile Send private message
mvic
PostPosted: Thu Feb 04, 2010 1:33 pm Post subject: Reply with quote

Jedi

Joined: 09 Mar 2004
Posts: 2078

hdilsky1 wrote:
I suspect that ExpiryInterval setup to 0, which means message - never expired

Messages only expire after their Expiry time has elapsed.

The time is measured from the time the message is put.

Changing ExpiryInterval in the queue manager will not change this fact.

If applications are not servicing their queue adequately then this is not fixed by making the messages expire - it is solved by fixing the application or (if the concurrency model supports it) running duplicate copies of the program against the same queue.
Back to top
View user's profile Send private message
hdilsky1
PostPosted: Thu Feb 04, 2010 1:33 pm Post subject: Reply with quote

Novice

Joined: 04 Feb 2010
Posts: 10
Location: Dallas,TX

mvic,

Thank you so much.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Thu Feb 04, 2010 3:35 pm Post subject: Re: How to find and open a mq.ini file? Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 8733
Location: US: west coast, almost. Otherwise, enroute.

Quote:
As the link you posted clearly says, ExpiryInterval is only relevant for periods where there is not MQGET activity

This is an odd statement.

It is possible that an application program is processing messages as quickly as it can from a queue, but not quick enough to get a msg with a short expiry value.
_________________
My life flows on in endless song;
How can I keep from singing?
Back to top
View user's profile Send private message
bruce2359
PostPosted: Thu Feb 04, 2010 4:18 pm Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 8733
Location: US: west coast, almost. Otherwise, enroute.

Quote:
I suspect that ExpiryInterval setup to 0, which means message - never expired ...


From the APR: Expiry (MQLONG) "MQEI_UNLIMITED The message has an unlimited expiration time."

From the Constants manual: "MQEI_UNLIMITED value -1." Not zero.

Since the expiry period is in 1/10th of a second, then 0 means the message expires pretty soon after being put to the queue. I haven't tested this theory, however.
_________________
My life flows on in endless song;
How can I keep from singing?
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Feb 04, 2010 6:58 pm Post subject: Re: How to find and open a mq.ini file? Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26015
Location: Texas, USA

bruce2359 wrote:
Quote:
As the link you posted clearly says, ExpiryInterval is only relevant for periods where there is not MQGET activity

This is an odd statement.

It is possible that an application program is processing messages as quickly as it can from a queue, but not quick enough to get a msg with a short expiry value.


What I was getting at was that if there is MQGET activity on a queue, the expired messages will be removed before the ExpiryInterval triggers the scavenger process to remove them.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Thu Feb 04, 2010 7:12 pm Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 8733
Location: US: west coast, almost. Otherwise, enroute.

I knew that's what you meant...
_________________
My life flows on in endless song;
How can I keep from singing?
Back to top
View user's profile Send private message
hdilsky1
PostPosted: Fri Feb 05, 2010 12:09 pm Post subject: Reply with quote

Novice

Joined: 04 Feb 2010
Posts: 10
Location: Dallas,TX

Sorry guys, I am confused now. Max depth of the queue is 5000. The queue gets about 500 expired messages per day (the messages that not picked up by program 1). I want to remove all expired messages.
If I set ExpiryInterval in Windows registry to 300 will the messages in the queue older than 300 sec be removed or not?
Back to top
View user's profile Send private message
Vitor
PostPosted: Fri Feb 05, 2010 12:14 pm Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26015
Location: Texas, USA

hdilsky1 wrote:
If I set ExpiryInterval in Windows registry to 300 will the messages in the queue older than 300 sec be removed or not?


No. That value controls how often the queue manager checks for expired messages.

To prevent further confusion, see the point 3) I made in my original post and confirm that these expired messages to which you refer are messages whose expiry time setting has passed. Not that they are "expired" in the sense that they're not going to be picked up by program 1 and need to be removed from the queue.

I'm wondering if what you're actaully asking is "how can I remove these messages which are stuck on this queue and will never be processed because they're making the queue fill up". No setting of the queue manager will do this unless the message has been set up to flag it to the queue manager for removal.

That's what ExpiryInterval is; the frequency at which it checks for these messages when no application is reading the queue.

If these messages are correctly set up already, and are expired in the WMQ sense then you should raise a PMR if they're not being removed because the queue manager is at fault.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Fri Feb 05, 2010 12:27 pm Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

To be more clear.

If you can SEE these messages as messages, and not as anything other than QDEPTH, then these messages HAVE NOT expired - either because the Expiry set on them has not elapsed or because NO EXPIRY was set.

The latter is much much more likely.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Fri Feb 05, 2010 12:40 pm Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 8733
Location: US: west coast, almost. Otherwise, enroute.

No. Messages expire when the time-in-queue reaches zero. Max time in queue is set by the application in the MQMDs expiry field - in 10ths of seconds - on a message by message basis.

No queue setting changes this. Once expired, the qmgr will not deliver ax expired message to an application. From time-to-time (platform-dependent), a task will be launched to remove expired messages from the queue.
_________________
My life flows on in endless song;
How can I keep from singing?


Last edited by bruce2359 on Fri Feb 05, 2010 12:57 pm; edited 1 time in total
Back to top
View user's profile Send private message
Display posts from previous:
Post new topicReply to topic Goto page 1, 2, 3  Next Page 1 of 3

MQSeries.net Forum IndexGeneral IBM MQ SupportHow to find and open a mq.ini file?
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.