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 » General IBM MQ Support » DEAD LETTER QUEUES

Post new topic  Reply to topic
 DEAD LETTER QUEUES « View previous topic :: View next topic » 
Author Message
sevenfan
PostPosted: Fri Aug 01, 2003 11:17 am    Post subject: DEAD LETTER QUEUES Reply with quote

Apprentice

Joined: 22 May 2003
Posts: 42

I have questions about dead letter queues. The documentation says that if a message is undeliverable it will end up in a queue manager's dead letter queue, provided one exists.

Under what circumstances would that occur?

If a message does go to a dead letter queue, is it possible to retrieve it and move it to another queue? I am assuming that the reason why this would happen is because my remote queue manager is down or something like that.

Finally, is it possible to trigger an event or program in the event that a message gets into dead letter queue - such as an error message or alert notification?

Thanks.
Back to top
View user's profile Send private message
neeff
PostPosted: Fri Aug 01, 2003 11:39 am    Post subject: Reply with quote

Novice

Joined: 06 Apr 2003
Posts: 11
Location: Munich and Ludwigsburg, Germany

Hi,

to give you some ideas: messages can end up in the dead letter queue for example if
* a message is received from another queue manager and the queue to which it should be saved does not exist.
* errors during firing a trigger occur (e.g., the application cannot be started - you'll find then the trigger message in the dead letter queue)
A message will NOT be placed in the dead letter queue if a remote queue manager is not available. In that case messages will stay in the transmission queue until the remote qmgr is back at work.

To process messages from the dead letter queue or delete them, use the dead letter queue handler (see the documentation for details).

About your last question: I am not sure if you can trigger a dead letter queue. I would recommend to set up a monitoring with your fafourite monitoring solution (e.g. BMC patrol or something like that).

Best regards, Thomas
_________________
Thomas Neeff
Certified IBM System Administrator - WebSphere MQ, V5.3
Germany
Back to top
View user's profile Send private message
Leafar
PostPosted: Fri Aug 01, 2003 12:09 pm    Post subject: Reply with quote

Acolyte

Joined: 03 Apr 2003
Posts: 74
Location: Buenos Aires

to move messages from the dead.letter.queue you can use the runmqdlq commando

i.e.
create the file "dlq.rules"
inputq ('SYSTEM.DEAD.LETTER.QUEUE')
inputqm('YOUR_QM') +
action(fwd) fwdq('YOUR-DEST-QUEUE') +
heade(yes)

and then run
runmqdlq < dlq.rules

And this will move all the messages arrived and arriving from the dead.letter.queue to another queue.

Also you can ask for the reason what the messages are arriving to the SDLQ using

Saludos
Rafael
Back to top
View user's profile Send private message MSN Messenger
PeterPotkay
PostPosted: Fri Aug 01, 2003 7:16 pm    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

You can trigger a DLQ.

Messages will not go to the DLQ if the application that put the original message can be notified synchronously of the problem by means of the reason code returned by the MQPUT or MQPUT1 call.



Here are some of the more common reasons for messages ending up in a DLQ:

MQRC_PUT_INHIBITED
(2051, X'803') Put calls inhibited for the queue.

MQRC_Q_FULL
(2053, X'805') Queue already contains maximum number of messages.

MQRC_NOT_AUTHORIZED
(2035, X'7F3') Not authorized for access.

MQRC_Q_SPACE_NOT_AVAILABLE
(2056, X'808') No space available on disk for queue.

MQRC_PERSISTENT_NOT_ALLOWED
(2048, X'800') Queue does not support persistent messages.

MQRC_MSG_TOO_BIG_FOR_Q_MGR
(2031, X'7EF') Message length greater than maximum for queue manager.

MQRC_MSG_TOO_BIG_FOR_Q
(2030, X'7EE') Message length greater than maximum for queue.
_________________
Peter Potkay
Keep Calm and MQ On
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 » General IBM MQ Support » DEAD LETTER QUEUES
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.