Author |
Message
|
sc |
Posted: Sat Oct 11, 2003 6:27 pm Post subject: How NOT to use DLQ for the local queue? |
|
|
Novice
Joined: 06 Sep 2003 Posts: 16
|
There is Dead Letter Queue defined for the QueueManager. We had a local queue which receives messages from remote QueueManager. We don't want messages moved to DLQ after that recv queue reached maximum depth as message sequence issue.
Need help. Thanks. |
|
Back to top |
|
 |
leongor |
Posted: Sun Oct 12, 2003 1:53 am Post subject: |
|
|
 Master
Joined: 13 May 2002 Posts: 264 Location: Israel
|
Alter aueue manager definition for dead letter queue :
alter qmgr deadq('')
If you use persistent messages then channel receiver will stop and wail until it again can put message to destionaton queue.
If you use non persistent messages then change channel's definition NPMSPEED to normal instead of FAST. _________________ Regards.
Leonid.
IBM Certified MQSeries Specialist. |
|
Back to top |
|
 |
sc |
Posted: Sun Oct 12, 2003 6:09 pm Post subject: |
|
|
Novice
Joined: 06 Sep 2003 Posts: 16
|
Thanks for the reply.
Actually there are some local queues which need the DLQ setting for the QMgr. So I cannot just set DLQ of Qmgr to NULL as other may use it.
But for my local queue, I don't like the overflowed message put into DLQ.
How can I achieve this? |
|
Back to top |
|
 |
Nathan |
Posted: Mon Oct 13, 2003 3:19 am Post subject: |
|
|
 Acolyte
Joined: 15 Sep 2003 Posts: 52 Location: Rochester, NY
|
You could define a Backout Requeue Name for the offending queue. But, this will have two problems. One, the messages will end up stored in another queue (probably what you are trying to avoid) and there will not be a DLQ header on them for error.
But, you could modify you programs code to use to queues. This is also easy if you don't care about the order the messages are received in. Otherwise you have to program that into the program too. |
|
Back to top |
|
 |
mathew |
Posted: Mon Oct 13, 2003 3:43 am Post subject: |
|
|
Newbie
Joined: 17 Sep 2003 Posts: 2
|
I have solved this by security (OAM)
This problem is only for messages from other qmgrs. Local applikations and clients get an 2053 when they put msg on a full q. Put an mcauser to the receiver/requestor-channel without permission to write to dlq. If the localq is full the channel will fall into error/retry. I did not try this on an MQ-Cluster. |
|
Back to top |
|
 |
sc |
Posted: Mon Oct 13, 2003 7:49 am Post subject: |
|
|
Novice
Joined: 06 Sep 2003 Posts: 16
|
mathew,
Does your solution of using OAM require the principal that had permission to put messages into local recv queue but cannot put into DLQ? If that is the case, Does it mean that I need explicitly to grant/revoke the permission on RECV queue and DLQ?
Thanks for all replies. |
|
Back to top |
|
 |
mrlinux |
Posted: Mon Oct 13, 2003 10:06 am Post subject: |
|
|
 Grand Master
Joined: 14 Feb 2002 Posts: 1261 Location: Detroit,MI USA
|
Well that would depend on the recv channel defiinition you have
2 choices for put authority Default which will use the userid running
the channel code or context (use the userid from the message) _________________ Jeff
IBM Certified Developer MQSeries
IBM Certified Specialist MQSeries
IBM Certified Solutions Expert MQSeries |
|
Back to top |
|
 |
|