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 Discussion » trigger message length

Post new topic  Reply to topic
 trigger message length « View previous topic :: View next topic » 
Author Message
ivanachukapawn
PostPosted: Fri Jul 02, 2010 10:01 am    Post subject: trigger message length Reply with quote

Knight

Joined: 27 Oct 2003
Posts: 561

The manual says (in the topic, "when triggering does not work" :
Quote:
If a trigger message is created but cannot be put on the initiation queue (for example, because the queue is full or the length of the trigger message is greater than the maximum message length specified for the initiation queue), the trigger message is put instead on the dead-letter (undelivered message) queue.
But if the trigger message is the message written to the initiation queue and its length is controlled by MQ and content restricted to Process Object, local queue name, etc - i.e. its size should probably be fixed and be some reasonably small number. Why does the manual state that the message will be put to the dead letter queue if it is too large? The max message length for the initiation queue will be 104,857,600 if the default is taken). That seems like an unreasonable occurrence and leads me to think a misconception (mine probably) is in the works. I ask because I have been getting 848-byte long messages in the SYSTEM.DEAD.LETTER.QUEUE which were targeted for the SYSTEM.DEFAULT.INITIATION.QUEUE. MQ5.3 Win2k system (and yes, I am aware that this MQ and this OS are both out of service).
Back to top
View user's profile Send private message
Vitor
PostPosted: Fri Jul 02, 2010 10:09 am    Post subject: Re: trigger message length Reply with quote

Grand High Poobah

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

ivanachukapawn wrote:
But if the trigger message is the message written to the initiation queue and its length is controlled by MQ


The length of no queue is controlled by WMQ. The admin has full control over the queue attributes, even the system ones. There's also no reason why a trigger message would not be sent to a user defined initiation queue.

ivanachukapawn wrote:
I ask because I have been getting 848-byte long messages in the SYSTEM.DEAD.LETTER.QUEUE which were targeted for the SYSTEM.DEFAULT.INITIATION.QUEUE.


And the code indicates these were dead lettered because they were too long? And the length of the initiation queue they were destined for (which may or may not be the one you think they are destined for) is large enough to take them?
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Fri Jul 02, 2010 10:10 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

The messages are going to the DLQ for the reason specified in the DLH. This might not be q full.

The default maxmsgln is not 104857600, it is going to be 4194304 and is smaller than that for SYSTEM.DEFAULT.INITIATION.QUEUE (1000) unless you have changed it.

You should give to whomever is using S.D.I.Q. Don't do that...
Back to top
View user's profile Send private message
ivanachukapawn
PostPosted: Fri Jul 02, 2010 10:31 am    Post subject: Reply with quote

Knight

Joined: 27 Oct 2003
Posts: 561

Vitor: WMQ is building and writing the trigger message, that is why I said that it was controlling the message length.

Vitor: No code said that the trigger messages were too long. The manual said that a too long message was one of the reasons a message could be written to the dead letter queue.

Jeff: The max message length of the initiation queue is 104,857,600 - obviously someone set the max to that value.

Since the initiation queue exists, and is not full, I thought it might be a good idea to understand what the manual was getting at when it talked about a trigger message length exceeding the maximum message length for the queue (the 3rd explanation as to how a message could get dead queued).

Jeff: These guys who setup S.D.I.Q are long gone.
Back to top
View user's profile Send private message
Vitor
PostPosted: Fri Jul 02, 2010 10:34 am    Post subject: Reply with quote

Grand High Poobah

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

ivanachukapawn wrote:
Vitor: WMQ is building and writing the trigger message, that is why I said that it was controlling the message length.


My bad.

ivanachukapawn wrote:
Vitor: No code said that the trigger messages were too long. The manual said that a too long message was one of the reasons a message could be written to the dead letter queue.


I know that. I was asking about the code on the actual message in the dead letter queue said about why that specifc message was in the dead letter queue.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Fri Jul 02, 2010 11:31 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Just because the maxmsgln of your queue is large enough to hold a trigger message, it doesn't mean that this will be true in all cases. That's what the manual is saying, that someone could set the maxmsgln of the initq to a value that can not contain the MQTMC structure + MQMD structure that is being generated.

Just because the qmgr generates the initiation message in the "normal" case, doesn't mean you should believe that's the only way that messages will *ever* end up on the initiation queue... This is one major reason NOT to use S.D.I.Q. It's dead easy for me to write a program that puts a malicious trigger message on that queue once I have any connectivity to your qmgr.

And, again, just because someone else set a trigger monitor to read from S.D.I.Q doesn't mean that you have to keep it. Dead easy to fix, entirely an administrative change, and requires only a bounce of the trigger monitor and not an interruption in application processing.
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 Discussion » trigger message length
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.