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 IBM MQ Support » why MQ is not returning error to the application?

Post new topic  Reply to topic Goto page Previous  1, 2
 why MQ is not returning error to the application? « View previous topic :: View next topic » 
Author Message
bruce2359
PostPosted: Mon Jan 05, 2009 6:59 am    Post subject: Reply with quote

Poobah

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

Quote:
...even if I am not catching other than MQException anywhere it means program will abnormally end.

This is not true.

MQ will pass an exception (reason and completion code) to the application. It's up to the application to do something (or not) about the exception.

The application might abend if the code violates hardware or o/s rules; but MQ doesn't abend an application because it fails to recognize a 2033 reason code, for example.
_________________
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
fjb_saper
PostPosted: Mon Jan 05, 2009 12:43 pm    Post subject: Reply with quote

Grand High Poobah

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

bruce2359 wrote:
Quote:
...even if I am not catching other than MQException anywhere it means program will abnormally end.

This is not true.

MQ will pass an exception (reason and completion code) to the application. It's up to the application to do something (or not) about the exception.

The application might abend if the code violates hardware or o/s rules; but MQ doesn't abend an application because it fails to recognize a 2033 reason code, for example.

And what about NullPointerException and ClassCastException or ClassNotFoundException ???
They are all indicative of problems in your code / environment but will not get visible until you create that catch all
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
xhaxk
PostPosted: Mon Jan 05, 2009 10:35 pm    Post subject: Reply with quote

Apprentice

Joined: 30 Oct 2008
Posts: 31

to return to the original subject of the post...

the AMQ7469 is issued asynchronously by some WMQ process when it discovers that the log file is getting full, not as a consequence of an MQI call, so in this case the app may not have been making an MQI call when the log was consolidated.
Back to top
View user's profile Send private message
Vitor
PostPosted: Tue Jan 06, 2009 12:36 am    Post subject: Reply with quote

Grand High Poobah

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

xhaxk wrote:
the AMQ7469 is issued asynchronously by some WMQ process when it discovers that the log file is getting full


Really?

xhaxk wrote:
so in this case the app may not have been making an MQI call when the log was consolidated.


Even assuming this, the queue manager will reference the log in reaction to most MQI calls. I also said (either in this thread or the other one) that the next MQI after this error would return a resource issue.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Tue Jan 06, 2009 6:29 am    Post subject: Reply with quote

Poobah

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

Quote:
the AMQ7469 is issued asynchronously by some WMQ process when it discovers that the log file is getting full, not as a consequence of an MQI call, so in this case your app may not have been making an MQI call when the log was consolidated

I made a small change to your statement.

Consider this: If your application makes no MQI calls (or only does so once every 10 minutes), then your application will not discover a reason or completion code (until ten minutes later) from the qmgr.

The same would be true for DB2 or other resource manager: no calls, no returns.

Like DB2 or Oracle, MQ is a resource (queue) manager, not a task (application) dispatcher.
_________________
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: Tue Jan 06, 2009 6:34 am    Post subject: Reply with quote

Grand High Poobah

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

bruce2359 wrote:
Consider this: If your application makes no MQI calls (or only does so once every 10 minutes), then your application will not discover a reason or completion code (until ten minutes later) from the qmgr.


To expand this point a little, you should not assume a failing application will be the first omen of a problem, or that all WMQ issues will result in an application error. There should also be proper monitoring of the queue manager to detect issues.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
belchman
PostPosted: Thu Jan 08, 2009 10:47 am    Post subject: Reply with quote

Partisan

Joined: 31 Mar 2006
Posts: 386
Location: Ohio, USA

And to go further, if the issue is "Log Full", I would expect an exception would be reported at PUT time as opposed to GET time.

A guess, but I would not expect a "log full" exception when you do a get but I suppose its possible.
_________________
Make three correct guesses consecutively and you will establish a reputation as an expert. ~ Laurence J. Peter
Back to top
View user's profile Send private message
bruce2359
PostPosted: Thu Jan 08, 2009 12:35 pm    Post subject: Reply with quote

Poobah

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

Quote:
A guess, but I would not expect a "log full" exception when you do a get but I suppose its possible.

Gets, Puts, Comits, alterations to object attributes, checkpoints, and a small fleet of other things get logged. The qmgr detects log full when it attempts to log anything, and finds insufficient log space.
_________________
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
Display posts from previous:   
Post new topic  Reply to topic Goto page Previous  1, 2 Page 2 of 2

MQSeries.net Forum Index » General IBM MQ Support » why MQ is not returning error to the application?
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.