dead-letter, defining, queues, dead-letter queue" />
Defining a dead-letter queue
Each queue manager must have a local queue to be used as a dead-letter queue so that messages that cannot be delivered to their correct destination can be stored for later retrieval. You must explicitly tell the queue manager about the dead-letter queue. We can do this by specifying a dead-letter queue on the CRTMQM command, or we can use the CHGMQM command to specify one later. You must also define the dead-letter queue before it can be used.
A sample dead-letter queue called SYSTEM.DEAD.LETTER.QUEUE is supplied with the product. This queue is automatically created when you create the queue manager. We can modify this definition if required. There is no need to rename it, although we can if you like.
A dead-letter queue has no special requirements except that:
- It must be a local queue
- Its MAXMSGL (maximum message length) attribute must enable the queue to accommodate the largest messages that the queue manager has to handle plus the size of the dead-letter header (MQDLH)
WebSphere MQ provides a dead-letter queue handler that allows you to specify how messages found on a dead-letter queue are to be processed or removed. For further information, see The WebSphere MQ dead-letter queue handler.