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 » IBM MQ Installation/Configuration Support » where to find the dead letter queue header on solaris box?

Post new topic  Reply to topic
 where to find the dead letter queue header on solaris box? « View previous topic :: View next topic » 
Author Message
Sneha
PostPosted: Tue Feb 26, 2008 10:46 pm    Post subject: where to find the dead letter queue header on solaris box? Reply with quote

Apprentice

Joined: 17 Feb 2008
Posts: 29

I just created a remote queue with the information of other queue manager name and local queue name. channels has been configured and running smooth.

But when I put the message in the remote queue it is going to the dead letter queue of the second queue manager. i checked the local queue PUT AND GET which is ENABLED only.

I like to see the reason in dead letter queue using amqsbcg. but i am unable to find the reason at any field. in fact not able to see the dead letter queue header. help me out...
Back to top
View user's profile Send private message Send e-mail
Gaya3
PostPosted: Tue Feb 26, 2008 11:06 pm    Post subject: Reply with quote

Jedi

Joined: 12 Sep 2006
Posts: 2493
Location: Boston, US

Hi Sneha,

You can see the contents of DLQ by using the following executable
amqsdlq
you can get this from /opt/mqm/samp/bin

Your issue could be related to some queue configuration
Check the error logs to find more information

Regards
Gayathri
_________________
Regards
Gayathri
-----------------------------------------------
Do Something Before you Die
Back to top
View user's profile Send private message
Vitor
PostPosted: Wed Feb 27, 2008 1:11 am    Post subject: Re: where to find the dead letter queue header on solaris bo Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

Sneha wrote:
I like to see the reason in dead letter queue using amqsbcg. but i am unable to find the reason at any field. in fact not able to see the dead letter queue header. help me out...


RFHUtil(c) is another tool which can display the DLH.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
SAFraser
PostPosted: Fri Feb 29, 2008 8:33 pm    Post subject: Reply with quote

Shaman

Joined: 22 Oct 2003
Posts: 742
Location: Austin, Texas, USA

On Solaris, the reason code can be found using amqsbcg by converting the sixth hex field in the first line of the message data to decimal.

For example, if the sixth hex field is "0805", that converts in decimal to "2053", destination queue is full. Or "0825" converts to "2085", unknown object name.

I've used this on Tandem, too, but cannot recall which field the value is in. If you look at the first row of hex data, you can pretty much figure out which ones to try till one yields a reason code.

This can be done on Windows, too, but it is much trickier (and I don't know why it works, perhaps one of our brave grandmasters will posit a theory). The digits in the fifth hex field in the message data must first be read in this order: 4th, 1st, 2nd. So a hex field that is "0508" would be read as "805". A hex field that reads "2508" would be read as "825". Then the number must be converted to decimal, and will yield the reason code for the dead letter message.

It is much easier to simply look at the queue manager log where the reason code is typically stated.
Back to top
View user's profile Send private message
Vitor
PostPosted: Sat Mar 01, 2008 2:47 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

SAFraser wrote:
This can be done on Windows, too, but it is much trickier (and I don't know why it works, perhaps one of our brave grandmasters will posit a theory).


Who knows why anything on Windows does what it does?

SAFraser wrote:

It is much easier to simply look at the queue manager log where the reason code is typically stated.


It's even easier to use a DLH aware tool to extract the code for you!
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Sat Mar 01, 2008 3:50 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

Vitor wrote:
SAFraser wrote:
This can be done on Windows, too, but it is much trickier (and I don't know why it works, perhaps one of our brave grandmasters will posit a theory).


Who knows why anything on Windows does what it does?


In this case, it's the difference between Encodings, more importantly between "endianness". I.e. Big-endian/little-endian.

I always get them confused as to which one is which, so better to look it up on google than trust my bad memory.

But it's why on Unix the first number is the first number and on Windows the first number is the second number.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
SAFraser
PostPosted: Sat Mar 01, 2008 7:21 am    Post subject: Reply with quote

Shaman

Joined: 22 Oct 2003
Posts: 742
Location: Austin, Texas, USA

Vitor wrote:

It's even easier to use a DLH aware tool to extract the code for you!


Sometimes, in the heat of battle, the only tool available is an SSH session. Or a green screen.

Gee, Vitor, I thought you of all people would appreciate a bit of trivia that provided a non-GUI solution....
Back to top
View user's profile Send private message
bruce2359
PostPosted: Sat Mar 01, 2008 8:38 am    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9470
Location: US: west coast, almost. Otherwise, enroute.

Quote:
Who knows why anything on Windows does what it does?

Intel cpu hardware stores numbers "little-endian" (most-significant digit at the right end of the number; vs. "big-endian," what we are comfy with, where most-significant digit is at the left end.

So, on Intel hardware, the number 123 sent in a message, without numeric transformation, would be interpreted as 321 on non-Intel.

http://www.madsci.org/posts/archives/1996-12/843185920.Cs.r.html

Take a look at the MQ Application Programmers Reference for the Dead Letter Header structure to find out exactly where the Reason Code of a dead-letter message is.
_________________
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
View user's profile Send private message
Vitor
PostPosted: Sun Mar 02, 2008 12:12 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

SAFraser wrote:
Gee, Vitor, I thought you of all people would appreciate a bit of trivia that provided a non-GUI solution....


I'm trying to be less predictable. Next I'm going to advocate the use of .NET on a Windows platform....


_________________
Honesty is the best policy.
Insanity is the best defence.
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 » IBM MQ Installation/Configuration Support » where to find the dead letter queue header on solaris box?
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.