Page 1 of 2

INSUFFICIENT VIRTUAL STORAGE

PostPosted: Fri Mar 29, 2013 11:57 pm
by Kshitij_07
Hi All,

My job is returning the abend code as S000 U0016 (in JESMSGLG : ABEND=S000 U0016 REASON=00000000 202)
I checked the spool & the message is INSUFFICIENT VIRTUAL STORAGE for a syncsort which I have not coded but seems to be present internally.

Details for this error:

PARMLIST :
SORT FILSZ=E37,DYNALLOC=(SYSDA,03),FIELDS=(00001,00001,CH,A,00002,00002,CH,A,00
04,00002,CH,A)
RECORD LENGTH=00133,TYPE=F
WER276B SYSDIAG= 2346802, 6994094, 6994094, 7030275
WER039A INSUFFICIENT VIRTUAL STORAGE
WER211B SYNCSMF CALLED BY SYNCSORT; RC=0000


Can somebody please let me know if you have come across this issue?
Let me know if you require more details & I will post the JCL & the PROC.

Thanks in advance !!!!

Re: INSUFFICIENT VIRTUAL STORAGE; abend=S000 U0016

PostPosted: Sat Mar 30, 2013 1:20 am
by dick scherrer
Hello and welcome to the forum,

You should post the complete JCL from the problem run along with any/all diagnostic information (includin message ids).

Re: INSUFFICIENT VIRTUAL STORAGE; abend=S000 U0016

PostPosted: Sat Mar 30, 2013 3:23 am
by BillyBoyo
You'll need to post the full sysout from the step which abended.

Do you have a SyncSort manual? There is advice on what to code to ensure there is sufficient memory for the Cobol SORT.

What has changed? Are you using the same JCL and any Control Cards as was previously OK with the execution of the program?

Re: INSUFFICIENT VIRTUAL STORAGE; abend=S000 U0016

PostPosted: Sat Mar 30, 2013 2:02 pm
by Quasar
Hi Kshitij,

Welcome aboard! Try searching the message WER039A in the SYNC Sort Manual.

Thank you very much.

Re: INSUFFICIENT VIRTUAL STORAGE; abend=S000 U0016

PostPosted: Sun Mar 31, 2013 7:28 pm
by Kshitij_07
Thanks ALL for your prompt reply!!!

The JCL:

 //WIP04    JOB (T,459),'NEW',CLASS=J,MSGCLASS=Y,NOTIFY=WIP04,           
 //        TIME=1440                                                     
 //         JCLLIB  ORDER=CCS.WIP04.PROG3                               
 //KA587DP  EXEC KA587DP                                                 
 //*                                                                     


Th PROC:
//KA587DP  PROC
//KA587EZ1 EXEC PGM=KA587,PARM='D'                                   
//STEPLIB  DD DISP=SHR,DSN=SYS5.PROD.LINKLIB                         
//SYSPRINT DD  SYSOUT=*                                               
//KA587RP  OUTPUT CLASS=F,WRITER=KA587DC                             
//B92OUT2  OUTPUT CLASS=*                                             
//CEEDUMP  DD  SYSOUT=*                                               
//EZTFM    DD UNIT=SYSDA,DATACLAS=MB010                               
//EZTVFM   DD UNIT=SYSDA,DATACLAS=MB001                               
//SYSOUT   DD  SYSOUT=*                                               
//*RPT1     DD  SYSOUT=(,),OUTPUT=(*.B92OUT2,*.KA587RP),             
//*             DCB=BLKSIZE=1330                                     
//RPT1     DD  DSN=CCS.SUBSAL.DAILY.OUT,                             
//         DISP=(NEW,CATLG,DELETE),                                   
//         DCB=(LRECL=3000,RECFM=FB),         
//         SPACE=(CYL,(5,50)),UNIT=SYSDA,
//         DATACLAS=MB010                 
//RECVRIN  DD  DISP=SHR,DSN=CCS.SUBSAL.DAILY         


KA587 is an easytrieve program.

SYSOUT has the same data which I mentioned in my initial query:

. . . . . . . . . . . . . . . . . . . . . . . . . . .
Display Filter View Print Options Search Help
-------------------------------------------------------------------------------
SDSF OUTPUT DISPLAY WIP04DD JOB40090 DSID 103 LINE 0 COLUMNS 02- 81
COMMAND INPUT ===> SCROLL ===> CSR
********************************* TOP OF DATA **********************************
PARMLIST :
SORT FILSZ=E37,DYNALLOC=(SYSDA,03),FIELDS=(00001,00001,CH,A,00002,00002,CH,A,00
04,00002,CH,A)
RECORD LENGTH=00133,TYPE=F
WER276B SYSDIAG= 3048858, 7197416, 7197416, 7030275
WER039A INSUFFICIENT VIRTUAL STORAGE
WER211B SYNCSMF CALLED BY SYNCSORT; RC=0000
WER449I SYNCSORT GLOBAL DSM SUBSYSTEM ACTIVE
******************************** BOTTOM OF DATA ********************************



The job log has the following details:

--- SUNDAY, 31 MAR 2013 ----
IRR010I USERID WIP04 IS ASSIGNED TO THIS JOB.
ICH70001I WIP04 LAST ACCESS AT 06:29:41 ON SUNDAY, MARCH 31, 2013
$HASP373 WIP04DD STARTED - WLM INIT - SRVCLASS BATCH - SYS PRA1
IEF403I WIP04DD - STARTED - TIME=06.49.18
IEF450I WIP04DD KA587EZ1 KA587DP - ABEND=S000 U0016 REASON=00000000 577
TIME=06.49.19
- -TIMINGS (MINS.)- ---PAGING CO
-JOBNAME STEPNAME PROCSTEP RC EXCP TCB SRB CLOCK SERV PAGE SWAP
-WIP04DD KA587DP KA587EZ1 U0016 67 .00 .00 .0 1872 0 0
IEF404I WIP04DD - ENDED - TIME=06.49.19
-WIP04DD (ASID 012F) ENDED. NAME-NEW TOTAL TCB CPU TIME= .00
$HASP395 WIP04DD ENDED

The completion code JESYSMSG is:
KA587DP - COMPLETION CODE - SYSTEM=000 USER=0016 REASON=00000000

Hi BillyBoyo , Quasar

What I am not able to understand is that from where is the sort card for SYNCSORT coming from ? Is it system generated in this case?

Thanks !!!!
Awaiting your replies !!! :)

Re: INSUFFICIENT VIRTUAL STORAGE; abend=S000 U0016

PostPosted: Sun Mar 31, 2013 8:52 pm
by Robert Sample
Easytrieve, like most vendor programs, will invoke the system sort when data needs to be sorted. Hence it is very common for sort statements to be generated by the product. You need to add REGION= to your EXEC in the PROC to add memory to your execution.

Re: INSUFFICIENT VIRTUAL STORAGE; abend=S000 U0016

PostPosted: Sun Mar 31, 2013 9:08 pm
by BillyBoyo
If you have a REPORT which is SEQUENCEd, then Easytrieve Plus will use your installed Sort product to sort the report file from which the report will be produced.

If you look at the Sort card created, I'd guess your have a REPORT which is SEQUENCEd on a one-byte field followed by two two-byte fields.

If you look at the SYSOUT for any step which has a REPORT with a SEQUENCE, you will see the Sort messages (WER for SyncSort, in your case).

A SORT "activity" in Easytrieve Plus is a more obvious place where your Sort product would be invoked.

Re: INSUFFICIENT VIRTUAL STORAGE; abend=S000 U0016

PostPosted: Sun Mar 31, 2013 11:36 pm
by dick scherrer
Hello,

When specifying the TIME= paremeter - do NOT use 1440.

Your system support people should be ale to tell you if you need to specify a different CLASS value.

Re: INSUFFICIENT VIRTUAL STORAGE; abend=S000 U0016

PostPosted: Mon Apr 01, 2013 10:33 am
by Kshitij_07
Thanks Dick, Robert, Billiboyo !!!

Dick,
Changing the TIME parameter did not affect the error :(
I added region to the jobcard & it worked :)
I was not aware about the invocation of the installed sort via Easytreive. Really helpful.
I am still new to mainframes , so bit low on experience.. but thanks to you guys I will learn fast :) !!!!!

Re: INSUFFICIENT VIRTUAL STORAGE; abend=S000 U0016

PostPosted: Mon Apr 01, 2013 3:59 pm
by Robert Sample
Dick's comment on the TIME= parameter was not related to your problem -- it was a general statement. First, many sites control job time by job class; if your site is one of these then you don't gain anything by using TIME= since the job class will determine your total CPU time. Second, if you are developing code and create an infinite loop, the program will only stop when your CPU time is expired and with TIME=1440 that won't happen. Third, well-managed sites do not allow application programmers to specify TIME=1440 on a production job and flush the job without executing it, so why code it on test jobs?