Solving abends with User Abend codes
Solving abends with User Abend codes
The abending step is followed by system abend code and user abend
code. A job abends due to one of the above two (both can not cause abend
together..) Hence when there is a valid system abend code is seen, the user
abend code will be U0000 and vice-versa.
System abends :
System abends are caused due to some system related problem
such as Problem with the allocation of space for an output/sort work
file(S*37), when divisor in compute statement get value 0 (SOCB), when
program tried to access non-executable value in memory location(SOC7)
and also when time out for jobs (S322) or when job is cancelled by system
automatically or by operations(S22).
User Abends :
User abends are the which are purposely expected by the
programmer/user on some specific conditions spaced by the job. This may
be due to the problem with the data, source code or application. All the
negative sqlcodes and all the user abend codes which are going to be
discussed here will come under user abends.
Index :
1.U0020
2.U0022
3.U0023
4.U0061
5.U0064
6.U0066
7.U0068
8.U0070
9.U0099
10.U0171
11.U3303
12.S*37
* For the abends which involve files, there are some abending info
displayed in the JMR, in the statements starting IEC****
So search for IEC in JMR.
________________________________________________________________________
U0020 :
U0020 abend is due to some problem with Scheduler CA7 and not due to the
application program.
Easy ways to get information about this abend is to search for CMT (Catalog
ManagemenT) first and also, see in JMRSEP2.
DSN = T006.T0610804.MDLCAL.ACR
U11-042 CANNOT RESTART - CMT ENTRY INVALID
U11-022 VERIF CODE = 24 PROC/STEP = STEP02 /BATCHTSO DDNAME = SYSOUT
END OF REPORT 01 - TOTAL ITEMS LISTED= 8
There may be messages like CMT NOT CORRECT and even Jcl errors like DATASET NOT
FOUND.
Soln : Search for the dataset T006.T0610804.MDLCAL.ACR using 3.4 option. And decide
whether to create new dataset /catalog the dataset.
Soln:Different Solution is given after analysing the job.For the above job, the file sequence need
to be corrected. Hence, sorting was done and the job was run.
U0061 :
This abend is due to some problem with the output sort file.
Soln: The JCL was analysed .In this job, since the output file is new(ly created,) the job is
restarted.
U0064 :
Soln: In this case, the sorting dataset is not found. So, find the file which was missing/ not
created.
______________________________________________________________________________
U0066 :
These abends are due to the sort proc which could not access the volume serial properly.
Soln: For this case, the sort work area should be increased and the job should be submitted
again.
U0068 :
From JCL,
44 //SORTIN22 DD DSN=T015.T15205V.STORE.HIST,
// DISP=(OLD,DELETE,KEEP)
******************************* Bottom of Data **********************
Soln: In this case, the sequence was not in order; so the dsn T015.T15205V.STORE.HIST is to be
sorted and the job should be rerun.
U0070 :
Ref: T32359
Jobs abended with U0070, leaves displays from program; Hence it can be solved by analysing
the application program.
U0099 :
PGM/PROC : IDCAMS
STEP NAME : STEP96
DESCRIPTION OF PROBLEM:
The Job abended in step96 with U099. The step96 deletes the VSAM dataset
"UCCICS01.T037.T37241.MQMSG.BATCNTL" and creates it again. Since there
was contention, the dataset couldnt be created and hence the job abended
with U099.
DESCRIPTION OF RESOLUTION:
Restarted the job from step96. It went thru fine.
U0171 :
The different versions of the GDG file used as input had different
record lengths.Some had 88 ( which were all blank ) and other has 82.
RESOLUTION:
I checked the following steps and the case was same with the steps,
step13sl and step14sl. I ran the fil job T13filjk to delete the empty
versions of the dataset which had bad record length (the two record lengths are 88 and 82.)
and restarted the jobs.
.
The job ran fine.
U3303 :
U3303 is definitely due to problem with IMS database ie Database not available for
access.IMS database problem may be due to the db locked or when IMS region down, it might be
tried to be accessed.
When the step involvs IMSBMP, IMS should be up and while running DLI(T96), IMS
should be down.
In SDSF output, see for IM* (ie PRE IM*) for finding out, the status of IMS region.
(IMSPCTL - Prod ; IMSTCTL - Test ) In that, search for the jobname/database and find the
IMS database accessed by the job.