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 » Mainframe, CICS, TXSeries » What happen to my application when actiive log full

Post new topic  Reply to topic
 What happen to my application when actiive log full « View previous topic :: View next topic » 
Author Message
KIT_INC
PostPosted: Thu Aug 08, 2013 5:34 am    Post subject: What happen to my application when actiive log full Reply with quote

Knight

Joined: 25 Aug 2006
Posts: 589

I am running MQ V7 on ZOS. The info center says
"When the active log becomes full, the queue manager halts processing until an off-load has been completed. " It provides info on system action and system programmer action. But there nothing on application action.
I was wondering what will happen to the MQ application (CICS IMS or Batch) when MQ is waiting. Will they get an error return code and will they also be waiting. In the MQ ZOS message and code manual, there are some return codes on Storage medium (e.g. MQRC_STORAGE_MEDIUM_FULL). But the explanation says Q full or structure full. There is nothing on active log full.
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Aug 08, 2013 6:12 am    Post subject: Reply with quote

Grand High Poobah

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

The application will also wait. You may find an application doing a get with wait will return with a 2033 even if messages are available, but I may be wrong on that.

Think of an application that's opening a file that's been migrated to level 2 & needs to be reloaded. The application just hangs waiting for the mount; same principle.

In due course the application will of course fail with a 522 or similar.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
elkinsc
PostPosted: Thu Aug 08, 2013 6:35 am    Post subject: Active log full Reply with quote

Centurion

Joined: 29 Dec 2004
Posts: 138
Location: Indy

When an active log fills, WMQ will move to the next one in the active log string and write the full log to the archive log. This is unless archiving has been turned off, which should NOT be done in a production environment. If archiving is turned off and there is an active UOW on the next active log in the string the queue manager will present:
CSQJ111A: OUT OF SPACE IN ACTIVE LOG DATA SETS
Effectively all action in the queue manager that has to do with persistent messaging will stop until the situation is resolved.

The available actions to resolve the problem are documented in the InfoCenter.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Aug 08, 2013 6:40 am    Post subject: Re: Active log full Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

elkinsc wrote:
Effectively all action in the queue manager that has to do with persistent messaging will stop until the situation is resolved.


What this means for your application is that, amazingly enough, you will start getting non-zero completion and reason codes from MQ API calls.

Just like happens with every other situation where MQ has an issue of any kind - it tells the applications using the same mechanism it uses to tell the application that everything worked.
Back to top
View user's profile Send private message
elkinsc
PostPosted: Thu Aug 08, 2013 7:00 am    Post subject: on z/OS Reply with quote

Centurion

Joined: 29 Dec 2004
Posts: 138
Location: Indy

As documented, MQ API requests that will wait until the situation is resolved:

MQ waits for an available data set. Any tasks performing MQ API calls that require logging will wait.

Please see:
http://publib.boulder.ibm.com/infocenter/wmqv7/v7r1/topic/com.ibm.mq.doc/zm14100_.htm
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Aug 08, 2013 7:03 am    Post subject: Re: on z/OS Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

elkinsc wrote:
As documented, MQ API requests that will wait until the situation is resolved:

MQ waits for an available data set. Any tasks performing MQ API calls that require logging will wait.

Please see:
http://publib.boulder.ibm.com/infocenter/wmqv7/v7r1/topic/com.ibm.mq.doc/zm14100_.htm


I'm always happy to be completely wrong.
Back to top
View user's profile Send private message
KIT_INC
PostPosted: Thu Aug 08, 2013 7:04 am    Post subject: Reply with quote

Knight

Joined: 25 Aug 2006
Posts: 589

Quote:
What this means for your application is that, amazingly enough, you will start getting non-zero completion and reason codes from MQ API calls.


Actually application getting a RC and take action is what I like to see . If many applications (or transactions) just sit there and wait, it can prevent new CICS or IMS transactions to start .These new transactions may not use MQ. I can see that a MQGET wait call will get 2033. But what about applications doing MQPUT.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Thu Aug 08, 2013 7:15 am    Post subject: Reply with quote

Poobah

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

If no log space is available for any event that requires logging, the app will receive the fail RC/CC - MQSET, MQPUT, MQGET, MQCMIT ...
_________________
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: Thu Aug 08, 2013 7:16 am    Post subject: Reply with quote

Grand High Poobah

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

KIT_INC wrote:
But what about applications doing MQPUT.


elkinsc wrote:
MQ waits for an available data set. Any tasks performing MQ API calls that require logging will wait.

Please see:
http://publib.boulder.ibm.com/infocenter/wmqv7/v7r1/topic/com.ibm.mq.doc/zm14100_.htm


Yes, this can prevent CICS and IMS transaction starts. This is the same behaviour as you'll experience for any z/OS WAIT state.

This is also, as the previous poster correctly said, why you don't turn archiving off in Prod.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Aug 08, 2013 7:17 am    Post subject: Reply with quote

Grand High Poobah

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

bruce2359 wrote:
If no log space is available for any event that requires logging, the app will receive the fail RC/CC - MQSET, MQPUT, MQGET, MQCMIT ...


No it won't. On z/OS the app waits for the log archive to complete. On distributed, the call fails as you indicate.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
KIT_INC
PostPosted: Thu Aug 08, 2013 7:36 am    Post subject: Reply with quote

Knight

Joined: 25 Aug 2006
Posts: 589

Thanks for all the responses. It's nice to know this important difference between distributed and ZOS. I was wondering why ZOS does not do the same as distributed. Give the application an RC saying log full. So that it can quit. Yes, I know that we should "NEVER TURN ARCHIVE OFF" in MVS production. But there are unplanned situations where it can cause the archive to take too long happen (waiting for tape mount) or not happen (no more space ). I know that all these are result of bad planning or configuration.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Thu Aug 08, 2013 8:14 am    Post subject: Reply with quote

Poobah

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

Doh!
_________________
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: Thu Aug 08, 2013 8:21 am    Post subject: Reply with quote

Grand High Poobah

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

KIT_INC wrote:
I know that all these are result of bad planning or configuration.


Or bad luck.

This is why all sites have some form of incident reporting & root cause analysis procedure. Bad stuff happens.

FWIW this is z/OS trying to be helpful. If there's a subsystem WAIT, it pages all the applications out in the expectation the WAIT will clear itself (i.e. a tape mount takes a while but does complete in the end) and the applications can continue not knowing something bad ever happened. This is distinct from distributed where the apps need some kind of error detection / restart strategy themselves.

I'm not saying one way is better or worse than the other, just highlighting the difference for the enlightenment of future readers.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
elkinsc
PostPosted: Thu Aug 08, 2013 8:38 am    Post subject: Reply with quote

Centurion

Joined: 29 Dec 2004
Posts: 138
Location: Indy

thank you!
Enlightenment leads to nirvana?

Have a lovely day
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 » Mainframe, CICS, TXSeries » What happen to my application when actiive log full
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.