Author |
Message
|
yegireddyk |
Posted: Thu Feb 25, 2010 11:23 pm Post subject: Messages are getting disappered from the MQ in AS400 |
|
|
Newbie
Joined: 25 Feb 2010 Posts: 2
|
Our application is in AS400 and we are interacting with Java through MQs. when we put the messages in the MQ, we set the Message Expiry time MDEXP field as -1 (to make the message stay in the MQ forever till it gets read by MQGET) and the Java sends the reply for that message and they put the expiry time same as the one we have sent (-1). but somehow after sometime (around 1 hr) the reply messages are getting disappeared from the MQ if we don't read those messages (using MQGET). Can someone help me why this can happen |
|
Back to top |
|
 |
zpat |
Posted: Fri Feb 26, 2010 12:48 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
Try leaving the MQMD expiry to default to non-expiring.
Your -1 might be a decimal value, not a binary number (hex FFFF etc).
Check the messages on the queue with something like MO71 or explorer - if the expiry time is really -1 in MQ terms, then it won't expire. |
|
Back to top |
|
 |
yegireddyk |
Posted: Fri Feb 26, 2010 1:06 am Post subject: |
|
|
Newbie
Joined: 25 Feb 2010 Posts: 2
|
Thanks for your explanation. Got few more questions on this.
1. When we put the message in the MQ with some Expiry time (with MDXEP some value), how can we see this in the message or where can we see this after we put the message.
2. Which level the Expiry time is generally setup. Is it on the Message level or MQ level (which means for all the messages it wil set the same expiry time).[/code] |
|
Back to top |
|
 |
Mr Butcher |
Posted: Fri Feb 26, 2010 1:17 am Post subject: |
|
|
 Padawan
Joined: 23 May 2005 Posts: 1716
|
you should do some manual reading, especially what is related to expiry in the application programmers guide and application programmers reference. the answer to your questions can be found there.....
1. the expiry is a field in the mqmd header. after putting the message, you may be able to browse the queue and see the value with a proper utility (if the message has not already expired). e.g. on z/OS, if i browse messages with expiry, i am able to see the clock ticking down.....
2. it is done at message level because you specify it in the message header before the mqput _________________ Regards, Butcher |
|
Back to top |
|
 |
shashivarungupta |
Posted: Fri Feb 26, 2010 1:18 am Post subject: |
|
|
 Grand Master
Joined: 24 Feb 2009 Posts: 1343 Location: Floating in space on a round rock.
|
yegireddyk wrote: |
...2. Which level the Expiry time is generally setup. Is it on the Message level or MQ level (which means for all the messages it wil set the same expiry time).[/code] |
Most of the times we consult with the application teams which are sending the messages and which are going to receive it..accordingly we ask to set it.
Otherwise we don't modify the default value of mqmd expiry field ! _________________ *Life will beat you down, you need to decide to fight back or leave it. |
|
Back to top |
|
 |
zpat |
Posted: Tue Mar 02, 2010 1:41 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
You can inspect the MQMD of messages on the queue with various queue and message browsing tools such as MQ Explorer, RFHUTIL (support pac IH03) and support pac MO71 (which is generally my choice). |
|
Back to top |
|
 |
|