View previous topic :: View next topic
|
Author |
Message |
swapnadeep.ganguly
Active User
Joined: 21 Mar 2007 Posts: 203 Location: India
|
|
|
|
Hi All,
I am getting an error of S878 abend. When I searched for the same I came to know that the reason for this error is
"An error happened while executing a STORAGE or a RC or RU form GETMAIN macro instruction. Either more virtual storage was requested than was available, or a negative amount of storage was requested. "
Can any one please help me out to remove the error? |
|
Back to top |
|
|
dbzTHEdinosauer
Global Moderator
Joined: 20 Oct 2006 Posts: 6966 Location: porcelain throne
|
|
|
|
try increasing your region size. You can do this either on the JOB card or as a Step parm. |
|
Back to top |
|
|
swapnadeep.ganguly
Active User
Joined: 21 Mar 2007 Posts: 203 Location: India
|
|
|
|
Can you please provide the Syntax for the same? |
|
Back to top |
|
|
dbzTHEdinosauer
Global Moderator
Joined: 20 Oct 2006 Posts: 6966 Location: porcelain throne
|
|
|
|
sorry, refer to the jcl manual and your shop standards. each shop has a default region size as well as jes user exits which can allow/disallow inappropriate allocations.
you might get away with just plugging values until your job runs - or taking the advice of some know-it-all on this board - but I suggest you talk to someone in either your systems-dept or a knowledgeable co-worker.
keep in mind, you are not asking them to solve a problem. you know the solution. an 878 means you have not allocated enough memory for your job. you are only asking what is allowed/not allowed in your shop. Often an increase in default resource allocations also means a change your job class. and you won't get that kind of info from this (or any) board. |
|
Back to top |
|
|
swapnadeep.ganguly
Active User
Joined: 21 Mar 2007 Posts: 203 Location: India
|
|
|
|
Thanks Dick for your explanation. |
|
Back to top |
|
|
swapnadeep.ganguly
Active User
Joined: 21 Mar 2007 Posts: 203 Location: India
|
|
|
|
The problem is a bit weird type.
Previously when I was using a different Load Library, the program was executing fine.
But when I changed the Load Library, the program is abending with the above error. |
|
Back to top |
|
|
swapnadeep.ganguly
Active User
Joined: 21 Mar 2007 Posts: 203 Location: India
|
|
|
|
Can any one kindly inform why am I getting the error while using the Endevor Load Library.
The error is removed when I am using my personal Load Library. ( I am creating the Load module by compiling my COBOL code).
The message that I am seeing at the SYSOUT is:
The system or user abend S878 R=00000010 was issued.
As per Dick's suggestion, I have also changed the Job Class but to no avail. |
|
Back to top |
|
|
dbzTHEdinosauer
Global Moderator
Joined: 20 Oct 2006 Posts: 6966 Location: porcelain throne
|
|
|
|
no job class, ...........region size |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10888 Location: italy
|
|
|
|
Are You sure that the program stored in the other library has been built properly ?
if the same job works with one "version" of the program,
i wouldn 't spend time investigating anything else |
|
Back to top |
|
|
swapnadeep.ganguly
Active User
Joined: 21 Mar 2007 Posts: 203 Location: India
|
|
|
|
Hi Enrico,
We can't provide the personal Load library name for a code that can be moved to the Production.
For that purpose, we are to put the load library for the code after it is staged in Endevor.
Only the loadlibraries are changed and all other parts remained the same. |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10888 Location: italy
|
|
|
|
I was not telling to use your personal library for production use
I was following a logical path
if the load library the only difference between a go and a nogo ....
this implies that the program chain used is different
again check the build process for the production
copy books,programs, subroutines |
|
Back to top |
|
|
swapnadeep.ganguly
Active User
Joined: 21 Mar 2007 Posts: 203 Location: India
|
|
|
|
Hi Enrico,
I checked out in details the build process for the production. All the things are same. I have not made any changes for the production type code. |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10888 Location: italy
|
|
|
|
the first stupid check to make is
are the lengths of the two load modules the same ?? |
|
Back to top |
|
|
swapnadeep.ganguly
Active User
Joined: 21 Mar 2007 Posts: 203 Location: India
|
|
|
|
Yes, the lengths of the two load modules are the same. |
|
Back to top |
|
|
dbzTHEdinosauer
Global Moderator
Joined: 20 Oct 2006 Posts: 6966 Location: porcelain throne
|
|
|
|
ok, batch or cics?
what does this module do?
how is it invoked? PGM=yourprgm
or pgm=IKJE::: |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10888 Location: italy
|
|
|
|
Then the only suggestion I can give You at this pont
is to check all the differences between the two environments
the program again expecially for dynamically called subroutines
in case of doubt about the program itself run an amblist onn both load modules to check the dates
jcl
input/update datasets
workfiles
...
add as many as You can imagine
good luck |
|
Back to top |
|
|
swapnadeep.ganguly
Active User
Joined: 21 Mar 2007 Posts: 203 Location: India
|
|
|
|
This is batch and the program is invoked using IKJEFT01. |
|
Back to top |
|
|
dbzTHEdinosauer
Global Moderator
Joined: 20 Oct 2006 Posts: 6966 Location: porcelain throne
|
|
|
|
there was probably an ief or similar msg provided along with the s878.
are you using a steplib?
when is the 878 occuring. immediately upon execution, after a little while, long while?
I (we) are trying to determine what requested the getmain, so that we can provide a better resolution to your problem. |
|
Back to top |
|
|
swapnadeep.ganguly
Active User
Joined: 21 Mar 2007 Posts: 203 Location: India
|
|
|
|
Hi,
The IEF or similar message provided along with the S878 is as under:
Code: |
CEE3250C The system or user abend S878 R=00000010 was issued.
From compile unit XXXXXXXX at entry point XXXXXXXX at compile unit offset +00002FA4 at entry offset +00002FA4
at address 23873944.
|
Yes I am using a Steplib.
I am getting the 878 after a little while. |
|
Back to top |
|
|
Guru Bob
New User
Joined: 31 Jan 2008 Posts: 21 Location: Malaysia
|
|
|
|
Check the following:
1. DATA(31/24) compile option - I hope it is DATA(31) or not specified then it is DATA(31) b y default.
2. CHeck your REGION size on your jobcard tell us what it is. REGION=nnn
3. You have not said if using QSAM or VSAM files in job. If using QSAM check the BUFNO= parameter.
4. CHeck the number of sequential files - how many.
5. What is the BLKSIZE of the QSAM files INPUT/OUTPUT.
6. are you using a REGION=on a STEP execution?
7. check with your sysprog to see what you can specify for REGION card.
If point 1 is 24 then if you have large number of BUFFERS or files then you will get a S878. |
|
Back to top |
|
|
swapnadeep.ganguly
Active User
Joined: 21 Mar 2007 Posts: 203 Location: India
|
|
|
|
Hi,
1. We are using DATA(31)
2. REGION is not specified either in job card or Proc currently. However we have used REGION=2401M
3. The files that are created are simple PS.
4. There are in total 30 sequential files.
5. Not mentioned BLKSIZE in the JCL.
6. No I am not using REGION= in STEP execution. |
|
Back to top |
|
|
Guru Bob
New User
Joined: 31 Jan 2008 Posts: 21 Location: Malaysia
|
|
|
|
2401M sounds very high
OK DATA(31) means QSAM buffers are above the line so you are not out of sequential storage. However I am ammused that REGION=2041M is passing. Try specifying REGION=0M which will give you as much as you can get.
What is your BLKSIZES please? Do you have any QSAM files concatenated together? |
|
Back to top |
|
|
swapnadeep.ganguly
Active User
Joined: 21 Mar 2007 Posts: 203 Location: India
|
|
|
|
We have not mentioned the BLKSIZE parameter. The JCL takes it up on its own.
Also we are not concatenating any QSAM files. |
|
Back to top |
|
|
shitij
New User
Joined: 09 Sep 2005 Posts: 31 Location: Delhi
|
|
|
|
Hi,
As per as my understanding u are trying to move the Load of the pgm from one stage to another (to Pre-Prod?).
Is it that u have to bring the load from ur personal lib. to a pre-defined lib. and from there u can sub. the staging job via endevor...and the load is migrated to Pre-Prod.
From there u make a package and finally it reaches production.
Now from ur personal lib. to the pre-defined one its going smooth...but when u try to move to Pre-Prod it gives user abend.
Am I correct in mapping the problem???
Pls let me know as i have seen such issues in my system too.
Regards,
Shitij |
|
Back to top |
|
|
Guru Bob
New User
Joined: 31 Jan 2008 Posts: 21 Location: Malaysia
|
|
|
|
OK so its a while after executing starts. I am suspecting QSAM buffers. The program I can assume is linked AMODE(31) RMODE(ANY).
Do you open all SEQ files at once? If not can you determine from the DUMP which file youare at the opening point for?
Doesn't the abend offset allow you to pinpoint the actual line of code in the program at failure?
Can you Try REGION=0M on the jobcard.
The BLKSIZE is available on the JESMSGS for each DDNAME so you can see what each opened file BLKSIZE was.
One way of proving it is QSAM memory problem with S878 is to code BUNFO=1 or BUFNO=2 for all QSAM files and rerun. |
|
Back to top |
|
|
|