MVSFORUMS.com Forum Index MVSFORUMS.com
A Community of and for MVS Professionals
 
 FAQFAQ   SearchSearch   Quick Manuals   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Getting S106 abend. Not enough memory was available.

 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Job Control Language(JCL)
View previous topic :: View next topic  
Author Message
cravindra
Beginner


Joined: 30 Jul 2004
Posts: 5
Topics: 3

PostPosted: Wed May 18, 2005 4:35 am    Post subject: Getting S106 abend. Not enough memory was available. Reply with quote

Hi
I am facing following problem while running the job.
"
An error occurred during LINK(X), LOAD, ATTACH(X), or XCTL(X)
processing.

Not enough memory was available for FETCH to do a GETMAIN for the module or control blocks. "

I have increased the table occurs clause in a Cobol II program and try to run the program and getting the above problem. I have aleady used Region=0m parameter in the JCL and EXEC step. Without changing the aplication program, can I correct the above problem..

Your help is highly appreciated..

Thanks
Ravi.
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12380
Topics: 75
Location: San Jose

PostPosted: Wed May 18, 2005 5:29 am    Post subject: Reply with quote

cravindra,

What is the reason code from the abend? Check this link for a detailed explanation of the abend s106

http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/IEA2H734/2.211?SHELF=&DT=20031013151022&CASE=

Hope this helps...

Cheers

Kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
cravindra
Beginner


Joined: 30 Jul 2004
Posts: 5
Topics: 3

PostPosted: Wed May 18, 2005 9:36 am    Post subject: Reply with quote

Hi Kolusu,

Here is the message from JESLOG....

FETCH FOR MODULE CLDLQSBC FROM DDNAME JOBLIB
FAILED BECAUSE INSUFFICIENT STORAGE WAS AVAILABLE.
LIBRARY ACCESS FAILED FOR MODULE CLDLQSBC, RETURN CODE 24,
REASON CODE 26080021, DDNAME JOBLIB

ABEND CODE=S106

From Sysdump.

A B E N D - A I D PAGE 4

**************************************************
JOB G1NXRUTW STEP JSTEP104 TIME 072124 DATE 05138 ID = 000
COMPLETION CODE SYSTEM = 106 REASON CODE = 0000000C

PSW AT ENTRY TO ABEND 070C1000 81480D86 ILC 02 INTC 000D
PSW ADDRESS 01480D86 AT TIME OF ERROR DOES NOT POINT TO AN ACTIVE MODULE


I looked at the site that you pasted above, but could not get much to solve the issue. Let me know if you can add anything..


Thank you
Ravi.
Back to top
View user's profile Send private message
dtf
Beginner


Joined: 10 Dec 2004
Posts: 110
Topics: 8
Location: Colorado USA

PostPosted: Wed May 18, 2005 12:23 pm    Post subject: Reply with quote

Some questions, (the answers to which might help):

1. Is this a called routine, if so who is the caller? If the caller is assembler, it is possible that it is coded impropperly, and thus you are getting another copy of the program each time you call it.

2. How big is program CLDLQSBC? Is it huge, what did your change entail?

3. Is it possible that you are compiling CLDLQSBC with DATA(24), thus forcing the storage to be allocated below the line? This would make your user area much smaller.

4. What region parameter is on your EXEC or JOB card?
________
ROOR BONG PICTURES


Last edited by dtf on Tue Mar 15, 2011 5:01 am; edited 1 time in total
Back to top
View user's profile Send private message
cravindra
Beginner


Joined: 30 Jul 2004
Posts: 5
Topics: 3

PostPosted: Thu May 19, 2005 2:21 am    Post subject: Reply with quote

My Answers are below....

1. No. Its driver programm, not called from any other program. Its COBOL II program.

2. Its small program around 500 kines of code. But it reads a input file with 30K records with record length of 1500 bytes.. Presently its loading 5500 records ( With length 1500 ) into a internal table. Now we need to increase it to 6700 records as per the business requirements.

3. I am compiling with DATA(31). I dont know the importance of this parameter.

4. We have used 0M for Region.. tried using at both Job card and exec card..

Let me know if you need any more information...

Is it is a internal table limit in cobol / mvs....??

Thanks
Ravi.

3.
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12380
Topics: 75
Location: San Jose

PostPosted: Thu May 19, 2005 6:32 am    Post subject: Reply with quote

cravindra,


Did you link-edit your pgm as RMODE ANY? . Just because you compiled it data(31) does not gurantee you to run above the line.

Your Internal table size is within limits. The max limit is 16 mb and you increased internal table is around 10 or 11 MB. so you should be fine with that.

Try coding this parm and see if it works

Code:

//STEP0100 EXEC PGM=YOURPGM,PARM='/ALL31(ON)'


Hope this helps...

Cheers

kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
dtf
Beginner


Joined: 10 Dec 2004
Posts: 110
Topics: 8
Location: Colorado USA

PostPosted: Thu May 19, 2005 11:56 am    Post subject: Reply with quote

Kolusu,

Good point concerning the link edit. Perhaps this will do the trick.

Quote:
3. I am compiling with DATA(31). I dont know the importance of this parameter.


Basically this tells the compiler to generate code allowing 31 bit addressing. Unless you are interfacing with legacy code you probably always want to use this. If you are interfacing with old assembler programs, or vs COBOL there may be instances where you'd need to use data(24).

As Kolusu points out though, if you do not have your linkage parm set properly, you could still end up "below tht line". This greatly reduces the available storage for your program.

If this is not the solution to your problem, I guess we'll have to dig deeper.

DTF
________
weed vaporizer
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Job Control Language(JCL) All times are GMT - 5 Hours
Page 1 of 1

 
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


MVSFORUMS
Powered by phpBB © 2001, 2005 phpBB Group