Below is the step which is giving S179 abend. The file in SORTIN and SORTOUT are of the same format (VSAM KSDS).
This step is in a production job, and it is working fine everyday except one day on which it abended with S179. The only difference I see on that day was the SORTIN contained around 6500 recs (on an average it contains 2000 records). Is this the cause?
Joined: 28 Mar 2005 Posts: 1448 Location: Chicago, IL
One point to be noted is DISP for SORTOUT.
DISP=(MOD,CATLG,CATLG) shouldn't be defined for a TEMP dataset. It should be DISP=(MOD,PASS)... But I hope that is assumed automatically.
If you are having this problem only the day when I/p have number of recs more than expected limit, then you 'll also have to search for more meaningful error messages in the Log.
SORTOUT is not a temporary dataset, instead it is a Master file. I kept MOD disposition because I want to merge the SORTIN in the master file (adding the SORTIN records to the existing file).
Also I checked the hisotry of the job, and found that there were 4-5 instances in last 90 days where SORTIN contained more records than that days 6500 records and it didnt abended on those days.
Below is the message generated by SORT.
Code:
ICE143I 0 BLOCKSET COPY TECHNIQUE SELECTED
ICE000I 1 - CONTROL STATEMENTS FOR 5740-SM1, DFSORT REL 14.0 - 04:26 ON SAT APR 08, 2006 -
SORT FIELDS=COPY
INCLUDE COND=(8,12,CH,NE,C'DUMMY-HEADER')
ICE201I 0 RECORD TYPE IS V - DATA STARTS IN POSITION 5
ICE193I 0 ICEAM1 ENVIRONMENT IN EFFECT - ICEAM1 INSTALLATION MODULE SELECTED
ICE088I 0 PCZSKBN2.SKBN002 .REPAMHS , INPUT LRECL = 429, BLKSIZE = 512, TYPE = V
ICE093I 0 MAIN STORAGE = (MAX,4194304,4194304)
ICE156I 0 MAIN STORAGE ABOVE 16MB = (4136944,4136944)
ICE127I 0 OPTIONS: OVFLO=RC0 ,PAD=RC0 ,TRUNC=RC0 ,SPANINC=RC16,VLSCMP=N,SZERO=Y,RESET=Y,VSAMEMT=Y,DYNSPC=32
ICE128I 0 OPTIONS: SIZE=4194304,MAXLIM=1048576,MINLIM=450560,EQUALS=N,LIST=Y,ERET=RC16 ,MSGDDN=SORTMSG
ICE129I 0 OPTIONS: VIO=N,RESDNT=ALL ,SMF=NO ,WRKSEC=Y,OUTSEC=Y,VERIFY=N,CHALT=N,DYNALOC=N ,ABCODE=MSG
ICE130I 0 OPTIONS: RESALL=4096,RESINV=0,SVC=109 ,CHECK=Y,WRKREL=Y,OUTREL=Y,CKPT==N,STIMER=Y,COBEXIT=COB1
ICE131I 0 OPTIONS: TMAXLIM=4194304,ARESALL=0,ARESINV=0,OVERRGN=65536,CINV=Y,CFW==Y,DSA=0
ICE132I 0 OPTIONS: VLSHRT=N,ZDPRINT=N,IEXIT=N,TEXIT=N,LISTX=N,EFS=NONE ,EXITCK=S,PARMDDN=DFSPARM ,FSZEST=N
ICE133I 0 OPTIONS: HIPRMAX=OPTIMAL,DSPSIZE=0 ,ODMAXBF=0,SOLRF=Y,VLLONG=N,VSAMIO=N
ICE084I 1 VSAM ACCESS METHOD USED FOR SORTOUT
ICE084I 1 VSAM ACCESS METHOD USED FOR SORTIN
ICE185A 0 DFSORT TERMINATED WITH S179 ABEND DURING PHASE C 3
I don't see anything obvious. Maybe somebody else does. I'd suggest opening up a problem with IBM service so the appropriate doc can be collected and analyzed.
Thanks Frank. But alas I couldnt get any clue from the link and other manuals i had.
Can you pls tell me how to raise a problem with IBM service. (I registered myself and tried to find, but again unlucky..)
Also I suspect my way to merge the file is wrong? Is whatever I am doing in the above step of JCL correct for merging a small transaction file into a similar layout but large file. Is there any alternate and better way to do this?
Joined: 15 Feb 2005 Posts: 7129 Location: San Jose, CA
Well, you say that your job works sometimes, but not other times, yet you don't seem to be able to pinpoint anything different between the times it works and the times it doesn't, so that's kind of confusing.
I'm also confused by your use of MOD and COPY for KSDSs. A KSDS has to be in order by the binary key defined for the cluster. So I would think that your SORTIN and SORTOUT data sets, if valid, would each already be sorted by the key and you should MERGE them on that key (using SORTIN01 and SORTIN02 for the input files and another file for SORTOUT) to keep them in order.
Your technique of trying to COPY with MOD a KSDS at the end of another KSDS doesn't seem valid to me as it would seem to result in the keys being out of order for the resulting SORTOUT KSDS unless the SORTIN KSDS keys just happen to all be greater than the original SORTOUT KSDS keys.
I had this problem before and one of the guy suggested me to add work area
and that worked fine or if u have declared work area then add 2 or more(wk3 and wk4) work area
//SORTWK01 DD UNIT=3390,SPACE=(CYL,(1,1))
//SORTWK02 DD UNIT=SYSDA,SPACE=(TRK,(10,10))
add this after ur sortout dd.
Joined: 15 Feb 2005 Posts: 7129 Location: San Jose, CA
Ganapath,
You must have had a different situation involving a sort application. SORTWKnn data sets are ONLY used for a sort application. Since Vinod is doing a copy application, the SORTKWnn data sets are NOT used and are irrelevant.