|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Persistent Messages lost on restarting Queue Manager |
« View previous topic :: View next topic » |
Author |
Message
|
Qadeer_824 |
Posted: Fri Sep 12, 2008 5:58 am Post subject: Persistent Messages lost on restarting Queue Manager |
|
|
 Acolyte
Joined: 04 Oct 2007 Posts: 59
|
Hi,
I have a very strange problem. I have recently created a queue, definition of which is given below. I placed about 10 messages each of about 400bytes. After i restart the queue manager, all messages are lost. I dont see anything in the queue. Can someone please advise me the what could the reason be?
I have checked the queue manager's error log and cant find any errors. One thing that took my attention was
Code: |
12/09/2008 14:41:47 - Process(5484.1) User(MUSR_MQADMIN) Program(amqzxma0.exe)
AMQ7229: 5 log records accessed on queue manager 'MQBRK61D' during the log
replay phase.
EXPLANATION:
5 log records have been accessed so far on queue manager MQBRK61D during the
log replay phase in order to bring the queue manager back to a previously known
state.
ACTION:
None.
-------------------------------------------------------------------------------
12/09/2008 14:41:47 - Process(5484.1) User(MUSR_MQADMIN) Program(amqzxma0.exe)
AMQ7230: Log replay for queue manager 'MQBRK61D' complete.
EXPLANATION:
The log replay phase of the queue manager restart process has been completed
for queue manager MQBRK61D.
ACTION:
None.
-------------------------------------------------------------------------------
12/09/2008 14:41:47 - Process(5484.1) User(MUSR_MQADMIN) Program(amqzxma0.exe)
AMQ7231: 0 log records accessed on queue manager 'MQBRK61D' during the recovery
phase.
EXPLANATION:
0 log records have been accessed so far on queue manager MQBRK61D during the
recovery phase of the transactions manager state.
ACTION:
None.
|
Code: |
display qlocal(BACKOUT.ICMS.QUEUE)
2 : display qlocal(BACKOUT.ICMS.QUEUE)
AMQ8409: Display Queue details.
QUEUE(BACKOUT.ICMS.QUEUE) TYPE(QLOCAL)
ACCTQ(QMGR) ALTDATE(2008-08-06)
ALTTIME(13.59.43) BOQNAME( )
BOTHRESH(0) CLUSNL( )
CLUSTER( ) CLWLPRTY(0)
CLWLRANK(0) CLWLUSEQ(QMGR)
CRDATE(2008-08-06) CRTIME(13.59.43)
CURDEPTH(0) DEFBIND(OPEN)
DEFPRTY(0) DEFPSIST(YES)
DEFSOPT(SHARED) DEFTYPE(PREDEFINED)
DESCR(BACKOUT queue for all ICMS interfaces)
DISTL(NO) GET(ENABLED)
HARDENBO INITQ( )
IPPROCS(0) MAXDEPTH(5000)
MAXMSGL(4194304) MONQ(QMGR)
MSGDLVSQ(PRIORITY) NOTRIGGER
NPMCLASS(NORMAL) OPPROCS(0)
PROCESS( ) PUT(ENABLED)
QDEPTHHI(80) QDEPTHLO(20)
QDPHIEV(DISABLED) QDPLOEV(DISABLED)
QDPMAXEV(ENABLED) QSVCIEV(NONE)
QSVCINT(999999999) RETINTVL(999999999)
SCOPE(QMGR) SHARE
STATQ(QMGR) TRIGDATA( )
TRIGDPTH(1) TRIGMPRI(0)
TRIGTYPE(FIRST) USAGE(NORMAL)
end
|
|
|
Back to top |
|
 |
PeterPotkay |
Posted: Fri Sep 12, 2008 6:01 am Post subject: |
|
|
 Poobah
Joined: 15 May 2001 Posts: 7722
|
The messages weren't persistent.
DEFPSIST(YES) at the queue level has no bearing on whether messages were persistent or not. _________________ Peter Potkay
Keep Calm and MQ On |
|
Back to top |
|
 |
bower5932 |
Posted: Fri Sep 12, 2008 6:02 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Aug 2001 Posts: 3023 Location: Dallas, TX, USA
|
Are you sure that your program actually put persistent messages? Your program can put non-persistent messages onto a DEFPSIST queue. I'd suggest that you put the messages and browse the queue before shutting down. amqsbcg will show the message's persistence. |
|
Back to top |
|
 |
Qadeer_824 |
Posted: Fri Sep 12, 2008 6:26 am Post subject: |
|
|
 Acolyte
Joined: 04 Oct 2007 Posts: 59
|
Huh! stupid me.. i didnt notice that small persistent checkbox on rfhutil [ ].. I was placing non-persistent messages and expecting them to be available. Sorry for the trouble, but i understand that every single click is important on a GUI
Thanks,
Qadeer |
|
Back to top |
|
 |
bruce2359 |
Posted: Fri Sep 12, 2008 7:35 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
Quote: |
DEFPSIST(YES) at the queue level has no bearing on whether messages were persistent or not. |
Not so. This is option 3 below.
When creating a message, the programmer must specify one of these three persistence values in the MQMD:
1. this is a persistent message
2. this is a non-persistent message
3. this message should take on the persistence value from the DEFPSIST attribute of the queue. If the programmer picks this option AND DEFPSIST(YES) is specified, then the message will be persistent. Alternatively, if the persistence attribute is set to DEFPSIST(NO), then the message will be non-persistent. _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
PeterPotkay |
Posted: Fri Sep 12, 2008 4:01 pm Post subject: |
|
|
 Poobah
Joined: 15 May 2001 Posts: 7722
|
If you read my statement again, you'll find it is correct. I am aware the app could have chosen to MQPUT using the queue's default persistence attribute. But looking at an empty queue, wonder why there are no messages there, that q attribute has no bearing. What attribute the messages actually had, what options they chose on the put, those things mattered. Qadeer posted the q def and no other info as to what the messages may have been, leading me to believe he thought the "queue" was persistent. Perhaps I was a little to obtuse in my reply.
DEFPSIST(YES) at the queue level has no bearing on whether messages were persistent or not, unless you know the app used the option to use that q attribute for choosing the messages persistence. _________________ Peter Potkay
Keep Calm and MQ On |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
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
|
|
|
|