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 » DLQ and Rules Table

Post new topic  Reply to topic Goto page 1, 2  Next
 DLQ and Rules Table « View previous topic :: View next topic » 
Author Message
shashivarungupta
PostPosted: Wed Jun 10, 2009 4:14 am    Post subject: DLQ and Rules Table Reply with quote

Grand Master

Joined: 24 Feb 2009
Posts: 1343
Location: Floating in space on a round rock.

As we know we can execute the DLQ handler using the runmqdlq command.
Suppose in my windows system i have created a set of queue managers. say 2 of them and we haven't set the default one.
Then when we run the runmqdlq with out the parameters i.e. blank Queue name and blank QM name. Then what will happen?

"As IBM says :
* If no queue manager name is supplied as an explicit parameter to runmqdlq, use the default queue manager for the machine.
* If no queue name is supplied as an explicit parameter to runmqdlq, use the DLQ defined for the local queue manager. "


C:\>dspmqver
Name: WebSphere MQ
Version: 6.0.2.4
CMVC level: p600-204-080509
BuildType: IKAP - (Production)

Another thing, I have rfhutil and a dummy QM and its Q.
I was trying, somehow message should go to the DLQ deliberately instead of Q in QM.

I tried..scenarios of Max QDepth, Max MessageLength, Put Inhibited, Using Alias and No target Queue.
All the times I was getting MQRC (that is good actually**) but my purpose, of sending message to DLQ deliberately and
then see how reason-action pair (that was in Rules table) gets executed, was failed.

I don't want messages to be put in DLQ using mq explorer on windows, as they dont have MQDLH.

** I believe IBM has come up with some ideas in its latest MQ fix packs and versions since after v5.3 as to give MQRC straight away... while application is trying to put the message(s) on the queue whereas something is wrong on that queue, instead of putting the message on the DLQ directly.
_________________
*Life will beat you down, you need to decide to fight back or leave it.
Back to top
View user's profile Send private message Send e-mail
Vitor
PostPosted: Wed Jun 10, 2009 4:22 am    Post subject: Re: DLQ and Rules Table Reply with quote

Grand High Poobah

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

shashivarungupta wrote:
Then when we run the runmqdlq with out the parameters i.e. blank Queue name and blank QM name. Then what will happen?


The same as for any WMQ application with insufficient connection details.

shashivarungupta wrote:
I believe IBM has come up with some ideas in its latest MQ fix packs and versions since after v5.3 as to give MQRC straight away... while application is trying to put the message(s) on the queue whereas something is wrong on that queue, instead of putting the message on the DLQ directly.


It has always been the case that you'd get a return code if the queue manager onto which you're doing a put detects a problem. The DLQ is explictly for messages received by a queue manager that can't be accepted (for the reasons you list for example). Define a second queue manager, put the message via rfhutil from there and you'll see them flow onto the DLQ of the target queue manager.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
shashivarungupta
PostPosted: Wed Jun 10, 2009 8:03 am    Post subject: Re: DLQ and Rules Table Reply with quote

Grand Master

Joined: 24 Feb 2009
Posts: 1343
Location: Floating in space on a round rock.

Vitor wrote:
shashivarungupta wrote:
Then when we run the runmqdlq with out the parameters i.e. blank Queue name and blank QM name. Then what will happen?


The same as for any WMQ application with insufficient connection details.


Its not necessary to pass the parameters in runmqdlq ( I can pass parameters in rules table as well)

as:
inputqm(’ ’) inputq(’ ’)

Quote:
........with insufficient connection details

I'm not sure about the 'insufficient connection detail', need to check on that in this case. But I have seen this kind of errors/exceptions at application level when appli. is not able to make a connection over the given parameters as ip, port, qm, chl, ssl cipher etc. etc.
_________________
*Life will beat you down, you need to decide to fight back or leave it.
Back to top
View user's profile Send private message Send e-mail
fjb_saper
PostPosted: Wed Jun 10, 2009 8:10 pm    Post subject: Re: DLQ and Rules Table Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20696
Location: LI,NY

shashivarungupta wrote:

I'm not sure about the 'insufficient connection detail', need to check on that in this case. But I have seen this kind of errors/exceptions at application level when appli. is not able to make a connection over the given parameters as ip, port, qm, chl, ssl cipher etc. etc.


Just wanting to remind you that runmqdlq is a server process and cannot use a client connection.
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
Vitor
PostPosted: Wed Jun 10, 2009 11:47 pm    Post subject: Re: DLQ and Rules Table Reply with quote

Grand High Poobah

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

fjb_saper wrote:
shashivarungupta wrote:

I'm not sure about the 'insufficient connection detail', need to check on that in this case. But I have seen this kind of errors/exceptions at application level when appli. is not able to make a connection over the given parameters as ip, port, qm, chl, ssl cipher etc. etc.


Just wanting to remind you that runmqdlq is a server process and cannot use a client connection.


Doh!
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
shashivarungupta
PostPosted: Thu Jun 11, 2009 4:48 am    Post subject: Reply with quote

Grand Master

Joined: 24 Feb 2009
Posts: 1343
Location: Floating in space on a round rock.

I got a rules table RULES.RUL

and I am getting one parser error when trying to execute runmqdlq command on DLQ1, of TEST1 queue manager (when appl. is trying to put the msg on LOCALQ which has reached its max depth limit).
Now the messages are coming to DLQ1 with MQRC_Q_FULL reason.

RULES.RUL contains:
REASON(MQRC_Q_FULL) ACTION(FWD) FWDQ(DLQX) FWDQM(&DESTQM)

and Error we got :
C:\Program Files\IBM\WebSphere MQ\Qmgrs\TEST1>RUNMQDLQ DLQ1 TEST1 < RULES.RUL
parse error on line 1
...2009-06-11 18.08.54 AMQ8758: 1 errors detected in input to runmqdlq.
2009-06-11 18.08.54 AMQ8709: Dead-letter queue handler ending.

Right now I am trying runmqdlq with parameters. (Yet to check without parameters and without setting the default QM ).
_________________
*Life will beat you down, you need to decide to fight back or leave it.
Back to top
View user's profile Send private message Send e-mail
shashivarungupta
PostPosted: Thu Jun 11, 2009 4:51 am    Post subject: Reply with quote

Grand Master

Joined: 24 Feb 2009
Posts: 1343
Location: Floating in space on a round rock.

THIS IS THE error that is on queue manager error log.

-------------------------------------------------------------------------------
6/11/2009 18:08:54 - Process(5704.1) User(t2589vg) Program(runmqdlq.exe)
AMQ8758: 1 errors detected in input to runmqdlq.

EXPLANATION:
One or more errors have been detected in the input to the dead-letter queue
handler(runmqdlq). Error messages will have been generated for each of these
errors. The dead-letter queue handler ends.
ACTION:
Correct the input data and restart the dead-letter queue handler.

-------------------------------------------------------------------------------

*In the previous post, DLQX is the local queue on TEST1, where I want to forward the message from DLQ1 of TEST1.
_________________
*Life will beat you down, you need to decide to fight back or leave it.
Back to top
View user's profile Send private message Send e-mail
friedl.otto
PostPosted: Thu Jun 11, 2009 4:54 am    Post subject: Reply with quote

Centurion

Joined: 06 Jul 2007
Posts: 116

Hmmm, the time runmqdlq saved my life in production ... how did I do it?

I recall having some issues too, and I think it was the rules file, very touchy about how you do it.
_________________
Here's an idea - don't destroy semaphores unless you're certain of what you're doing! -- Vitor
Back to top
View user's profile Send private message
shashivarungupta
PostPosted: Thu Jun 11, 2009 5:00 am    Post subject: Reply with quote

Grand Master

Joined: 24 Feb 2009
Posts: 1343
Location: Floating in space on a round rock.

friedl.otto wrote:
I recall having some issues too, and I think it was the rules file....

actually what was in there or what was issue with that (rules file) ?
_________________
*Life will beat you down, you need to decide to fight back or leave it.
Back to top
View user's profile Send private message Send e-mail
shashivarungupta
PostPosted: Thu Jun 11, 2009 5:22 am    Post subject: Re: DLQ and Rules Table Reply with quote

Grand Master

Joined: 24 Feb 2009
Posts: 1343
Location: Floating in space on a round rock.

Vitor wrote:
shashivarungupta wrote:
Then when we run the runmqdlq with out the parameters i.e. blank Queue name and blank QM name. Then what will happen?


The same as for any WMQ application with insufficient connection details.


I agree on this.
I tried.. as got it:
C:\Program Files\IBM\WebSphere MQ\Qmgrs\TEST1>RUNMQDLQ < RULES.RUL
2009-06-11 18.48.09 AMQ8741: Unable to connect to queue manager.

parse error on line 1
...2009-06-11 18.48.09 AMQ8758: 2 errors detected in input to runmqdlq.
2009-06-11 18.48.09 AMQ8709: Dead-letter queue handler ending.


where parse error on line 1(above) is the error that I posted earlier as a question.

_________________
*Life will beat you down, you need to decide to fight back or leave it.
Back to top
View user's profile Send private message Send e-mail
bruce2359
PostPosted: Thu Jun 11, 2009 5:32 am    Post subject: Reply with quote

Poobah

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

This is familiar...

I know this was (is?) an issue on Windows if the last line of the rules table (Notepad) did not have a CR/LF character at the end - basically a blank line as the last line.
_________________
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
shashivarungupta
PostPosted: Thu Jun 11, 2009 9:07 am    Post subject: Reply with quote

Grand Master

Joined: 24 Feb 2009
Posts: 1343
Location: Floating in space on a round rock.

bruce2359 wrote:
This is familiar...
I know this was (is?) an issue on Windows if the last line of the rules table (Notepad) did not have a CR/LF character at the end - basically a blank line as the last line.


I have been using EditPlus as a text editor, and when I have created the RULES.RUL table, there was a single line only. I took care.. as there should not be any special characters/new lines/low values.
(basically EditPlus shows the line numbers and there was only one line in RULES.RUL file.)
_________________
*Life will beat you down, you need to decide to fight back or leave it.
Back to top
View user's profile Send private message Send e-mail
bruce2359
PostPosted: Thu Jun 11, 2009 10:29 am    Post subject: Reply with quote

Poobah

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

Try adding a blank line as the last line.
_________________
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
shashivarungupta
PostPosted: Thu Jun 11, 2009 10:39 am    Post subject: Reply with quote

Grand Master

Joined: 24 Feb 2009
Posts: 1343
Location: Floating in space on a round rock.

bruce2359 wrote:
Try adding a blank line as the last line.


Oops... you meant to say that there should be a new blank line.
I thought, it shouldn't be., because in most of the cases when we faced parser kind of errors...those are/were because of leading characters (whether its a blank/new line).

Anyways...I'll try that and will be back..until then ASTALAVISTA
_________________
*Life will beat you down, you need to decide to fight back or leave it.
Back to top
View user's profile Send private message Send e-mail
PeterPotkay
PostPosted: Thu Jun 11, 2009 10:43 am    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7716

The blank line as the last line is a requirement for MQ on Windows only. I submitted feedback to the InfoCenter people that they should add this critical info in there. I wasted a day on this same problem a few months ago - do a search on this site.
_________________
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 Goto page 1, 2  Next Page 1 of 2

MQSeries.net Forum Index » General Discussion » DLQ and Rules Table
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.