Author |
Message
|
tonym |
Posted: Fri Feb 20, 2004 1:31 am Post subject: wmqi expiry processing |
|
|
Novice
Joined: 22 Sep 2003 Posts: 11
|
Has anyone seen inaccuracies when WMQI converts the internal expiry property (GMTTIMESTAMP) into actual message expiry (tenths of seconds)?
Prior to writing a message, I have the following properties in Root (extracted from a trace node immediately prior to the MQOutput node):
Root.Properties.CreationTime = GMTTIMESTAMP '2004-02-20 09:10:01.040'
Root.Properties.ExpirationTime = GMTTIMESTAMP '2004-02-20 09:30:01.170660'
and just for good measure
Root.MQMD.Expiry = GMTTIMESTAMP '2004-02-20 09:30:01.170660'
The time at which the message was put to the queue was almost identical to the creation time, so the assumption is that the message would be put with an expiry of approx 12000 (20 mins = Expiration Time minus current time). However, the actual expiry is approx 9000, which would imply that WMQI is using an ExpirationTime of GMTTIMESTAMP '2004-02-20 09:25:01.170660'.
Has anyone else seen anything similar?
cheers
Tony |
|
Back to top |
|
 |
jfluitsm |
Posted: Sun Feb 22, 2004 6:12 am Post subject: |
|
|
Disciple
Joined: 24 Feb 2002 Posts: 160 Location: The Netherlands
|
Tony,
Expiry is not an exact science, this is because of the way expiry works.
MQ decrements the expiry value with the time is spend in one queue-manager. So say you put a message on QM1, after 2 seconds the message is read from the xmit queue and sended to QM2, the expiry will be 2 seconds less then where you started with. When the broker read the message say 3 seconds after is arrived at QM2, the expiry will be 5 seconds less then where you started with. The time for the transport is not counted for.
When you put a message with a copied expiry, the time the message was in the broker will not be acounted.
The put time will be the time you put the message on QM1, using the clock of the server running QM1.
The expiry time will be expiry left added to the get time of the broker, using the clock on the broker server.
So comparing both times is not an option because:
- The expiry interval is not reduced in all cercumstances.
- The clocks of different servers can have different times. Because the expiry interval is only decremented within a queue-manager, the different clocks have no influence on the expiry interval. _________________ Jan Fluitsma
IBM Certified Solution Designer WebSphere MQ V6
IBM Certified Solution Developer WebSphere Message Broker V6 |
|
Back to top |
|
 |
LearnMQSI |
Posted: Fri Feb 27, 2004 7:25 am Post subject: Persistent Message with no expiry |
|
|
 Centurion
Joined: 20 Aug 2002 Posts: 137
|
Hi There,
Have you heard this before?
Can we set a message persistent with no expiry?
If we can, than HOW?
What is Unlimited expiry(-1) means?
It is kind of ungent, please help me out here. |
|
Back to top |
|
 |
vmcgloin |
Posted: Fri Feb 27, 2004 7:52 am Post subject: |
|
|
Knight
Joined: 04 Apr 2002 Posts: 560 Location: Scotland
|
Unlimited expiry means it never expires. You've already found what you are looking for. |
|
Back to top |
|
 |
LearnMQSI |
Posted: Mon Mar 01, 2004 9:27 am Post subject: non-persistent with no expiry |
|
|
 Centurion
Joined: 20 Aug 2002 Posts: 137
|
Hi There,
Sorry, Actually I'm looking for to set up a message non-persistent with no expiry on it.
Is that means we can set DEFPSIST() attribute to NO and expiry time with -1?
My question is can we make a message non-persistent but not to expire?
Thanks in advance |
|
Back to top |
|
 |
vmcgloin |
Posted: Mon Mar 01, 2004 9:29 am Post subject: |
|
|
Knight
Joined: 04 Apr 2002 Posts: 560 Location: Scotland
|
Quote: |
My question is can we make a message non-persistent but not to expire? |
Yes, no problem, but you still run the risk of 'losing' the message in case of failure. |
|
Back to top |
|
 |
LearnMQSI |
Posted: Mon Mar 01, 2004 9:33 am Post subject: |
|
|
 Centurion
Joined: 20 Aug 2002 Posts: 137
|
Thank you so much for your quick response.
Want to know what kind of failure you are talking? is it Q Mgr failure?
What if I bring my server down for maintenance purpose, would my messages still survive if I bring my MQ server up after maintenance?
Again appreciate your response |
|
Back to top |
|
 |
Empeterson |
Posted: Mon Mar 01, 2004 10:12 am Post subject: |
|
|
Centurion
Joined: 14 Apr 2003 Posts: 125 Location: Foxboro, MA
|
If you want your messages to survive a queue manager shutdown, you will have to make them persistent. _________________ IBM Certified Specialist: MQSeries
IBM Certified Specalist: Websphere MQ Integrator |
|
Back to top |
|
 |
EddieA |
Posted: Mon Mar 01, 2004 11:26 am Post subject: |
|
|
 Jedi
Joined: 28 Jun 2001 Posts: 2453 Location: Los Angeles
|
Not with CSD06, you don't. There's a new option that makes non-persistent messages survive a Queue Manager restart.
Cheers, _________________ Eddie Atherton
IBM Certified Solution Developer - WebSphere Message Broker V6.1
IBM Certified Solution Developer - WebSphere Message Broker V7.0 |
|
Back to top |
|
 |
|