You are on page 1of 7

ABEND code index Find name

1. System codes SYSCD


2. Return codes RETCD
3. File status codes STACD
4. SQL codes SQLCD
5. CICS codes CICSCD

-----------------------------------------------------------------------
SYSCD - System codes
----------------------------------------------------------------------
SB37 – INSUFFIENT STORAGE SPACE ALLOATED FOR THE DATASET.

SPACE - NEED TO INCREASE SPACE ON THE SORTED OUTPUT DATA SET.

SOLUTION :

SD37 * MORE SPACE NEEDED IN SPACE PARM. THERE WAS NO SECONDARY SPACE
* SPECIFIED.
SE37 - SPACE PROBLEM - IF DSN IS A FOCUS D/S - TRY COMPRESSING THE DSN
THRU 3.1.
* THIS RESULTS WHEN AN OUTPUT PDS FILLS UP ITS SPACE. IT ALSO
* HAPPENS WHEN THE PDS CANT ACQUIRE ITS 15 EXTENTS ON ONE VOLUME.
* A PDS CAN NOT SPAN MORE THAT ONE VOLUME.
S001 - I/O ERROR
* WRONG LENGTH RECORD OR PHYSICAL BLOCK
* NO END OF FILE MARKER
* ATTEMPT TO READ RECORD AFTER END-OF-FILE CONDITION FOUND
* HARDWARE ERROR
* TRIED TO WRITE ON AN INPUT FILE
* INCORRECT USE OF BLOCK CONTAINS CLAUSE - COBOL
* SECONDARY SPACE TO SMALL- (LIKE SB37)
* TAPE BEING READ IN WRONG DENSITY
* TRTCH PARM WAS WRONG
* RECFM V IS INCOMPATIBLE WITH TRTCH ET

=-------------------------------------------------------------------------------
S0C1 - OPERATION EXCEPTION
* A MISSING OR MISSPELLED DD.
* DATASET WAS OPEN OR CLOSED WHEN AN INPUT/OUTPUT INSTRUCTION
* WAS ISSUED FOR IT. IT SHOULD HAVE BEEN THE OPPOSITE.
* BAD LOAD MODULE OR OBJECT DECK.
* FORTRAN- MISSING DIMENSION STATEMENT, SAME NAME FOR ARRAY AND A
* SUBROUTINE.
* COBOL- USING SORT VERB, DDNAME WAS NOT SORTOUT WHEN THE GIVING
* OPTION WAS USED.
* COBOL- SUBROUTINE PROG ID WAS THE SAME AS THE ENTRY NAME.
* COBOL- TRIED TO CALL WITHIN COBOL F SORT I/O PROCEDURE.
* COBOL- TRIED TO CALL A SUBROUTINE WHICH COULDNT BE FOUND.
System ABEND: S0C1

Description: An attempt was made to execute an invalid machine instruction


operation code. The operation code is either invalid or is for an instruction that is not
available on this CPU. This failure is usually due to a branch to an invalid storage
location, as might occur in a load module with unresolved external references, or
when a branch to an address outside of a program occurs.
User Action: Correct the program logic or construction error and rerun the job.
Possible causes for this abend include:

Subscript error
"Clobbered" code
Tried to read a file that was not open
Misspelled DDNAME
Error in parameters passed to subroutines
Missing DD card
Recording mode was wrong, or density was incorrect
Bad load module, possible bad object deck in FORTRAN
(unresolved external references)
Missing dimension statement
Same name for an array and a subroutine
COBOL: subroutine prog ID was the same as the entry name
tried to call within COBOL sort I/O procedure

tried to call a subroutine which could not be found


incomplete DCB for SORTIN file
using sort verb, DDNAME was not SORTOUT when the
"giving" option was used.
executing sort-using after opening SORTIN file

S0C2 - PRIVILEGED OPERATION EXCEPTION


* COBOL- MISSING PERIOD AT END OF PARAGRAPH OR PARAGRAPH NAMES.
* COBOL- MISSING GOBACK AFTER SORT VERB - LOGIC FELL INTO
* INPUT PROCEDURE.
* A MISSING OR MISSPELLED DD.
* DATASET WAS OPEN OR CLOSED WHEN AN INPUT/OUTPUT INSTRUCTION
WAS ISSUED FOR IT. IT SHOULD HAVE BEEN THE OPPOSITE.
System ABEND: S0C2

Description: An attempt was made to execute a privileged instruction while


executing in problem program state. This may be the result of an invalid branch to a
storage location that contains a privileged machine instruction operation code. A
privileged instruction is an instruction that only certain special system programs are
permitted to execute.

User Action: Correct the program logic error and rerun the job.
Possible causes for this abend include:
Unintentional branch to invalid instruction due to subscript error
COBOL: Missing period at end of paragraph or paragraph names
Missing goback after sort verb - logic fell into input procedure
ACCEPT verb executed when no SYSIN DD was available.
System ABEND: S0C3

Description: An attempt was made to make the EXECUTE machine instruction the
target of an EXECUTE instruction, which is not allowed.

User Action: Correct the program logic error and rerun the job.
S0C4 - PROTECTION EXCEPTION
* INDEXING (SUBSCRIPTING) OUTSIDE THE PGM'S ASSIGNED LIMITS.
* UNITIALIZED INDEX.
* A MISSING OR MISSPELLED DD.
* AN ATTEMPT TO READ AN UNOPEND INPUT FILE.
* BLOCKSIZE AND RECORD SIZE BEING SPECIFIED AS = FOR VARIABLE
LENGTH RECORDS
System ABEND: S0C4

Description: This ABEND is caused by a hardware detected virtual address


translation error, or a storage protection violation. One of the following is true:

• The protect key in the program PSW does not match the protect key of an
instruction operand or storage area. References to pages protected with the
PGSER PROTECT service or specified shared with a read-only view to the
IARVSERV service can cause this exception. - this is a page protection
exception (reason code 4).

• The requested referenced page was never allocated (i.e., never GETMAIN'ed -
reason code 10 or 11) - this is a page-translation or segment-translation
exception.

• The requested virtual storage page was paged out and the routine that
referenced it was disabled for I/O interrupts (reason code 11 with disabled
PSW).

• A program executing in a subspace referred to storage that was not available


to it. A program in a subspace can only refer to storage in the subspace or
storage common to all subspaces (reason code 10 or 11).

User Action: Correct the program logic error that generated the invalid address or
storage reference. When analyzing the dump, remember that the PSW saved when
an 0C4 abend occurs may point at the failing instruction or it may point at the next
instruction after the failing instruction.

Check to ensure that your program is obtaining, using, and freeing storage properly.
Moving data to a zero address or to an address less than 512 (decimal) is a very
frequent cause of this abend.

Possible causes for this abend include:

COBOL: Invalid address was referenced due to subscript error or bad


parameter passed
In group move, receiving record variable length defined incorrectly
Tried moving variable length record that was larger than target field
size
Tried to read or write a file which was not open
Used DD DUMMY with logic that moves high values to FD
Tried to call within COBOL SORT I/O procedure
Tried to "goback" in the SORT output procedure
S0C5 - ADDRESSING EXCEPTION
* INDEXING (SUBSCRIPTING) OUTSIDE THE PGM'S ASSIGNED LIMITS.
* UNITIALIZED INDEX.
* A MISSING OR MISSPELLED DD.
* AN ATTEMPT TO CLOSE A DATASET A SECOND TIME.
* AN INPUT/OUTPUT INSTRUCTION TERMINATED BECAUSE OPEN WAS
UNABLE TO COPLETE THE DCB.
System ABEND: S0C5
Description: This ABEND is an addressing exception. An address developed and
used by the ABENDing program lies outside of the available virtual storage on the
processor.

Possible causes for this abend include:

Subscript error - referenced beyond end of a table in program running V=R

COBOL: performed procedure not exited properly


record described too short
referenced a record without giving a read
tried to use write without 'from' option on APPLY WRITE ONLY file

User Action: Correct the program logic error that generated the invalid address
or storage reference.
S0C6 - SPECIFICATION EXCEPTION
• AN ADDRESS DOES NOT SPECIFY THE BOUNDARY REQUIRED.
System ABEND: S0C6

Description: This ABEND is a specification exception. One of the following


occurred:

1) A data, instruction, or control-word address does not specify the proper storage
boundary alignment.

2) An instruction specifies an odd register number when it should specify the even
numbered register of an even- odd register pair.

3) A floating point register other than 0, 2, 4, or 6 was specified in a floating point


instruction.

4) The multiplier or divisor in a decimal (packed) arithmetic instruction exceeds 15


digits and sign.

5) The first operand field is shorter than or equal to the second operand field in a
decimal (packed) multiplication or division instruction.

6) The block address in a SET STORAGE KEY or INSERT STORAGE KEY instruction has
the four low-order bits not all zero.

7) A PSW with a non-zero protection key was encountered when protection was not
installed.

User Action: Correct the program logic error that caused the specification
exception and rerun the job
S0C7 - DATA EXCEPTION- DATA WAS OF INCORRECT FORMAT FOR THE INSTRUCTION
ATTEMPTING TO PROCESS IT.
* UNINITIALIZED INDEX OR SUBSCRIPT.
* FIELDS IN DECIMAL ARITHMETIC OVERLAP INCORRECTLY.
* INDEX/SUBSCRIPT VALUE INCORRECT AND INVALID DATA WAS REFERENCED.
* THE DECIMAL MULTIPLICAND HAS TOO MANY HIGH-ORDER SIGNIFICANT
DIGITS.
* DATA FIELD WAS NOT INITIALIZED, BLANKS WERE READ INTO A FIELD
DESIGNED TO BE PROCESSED WITH PACKED DECIMAL INSTRUCTIONS.
System ABEND: S0C7
Description: This ABEND is a data exception and can only occur when decimal
(packed) instructions are used. One of the following can cause this error:

1) The sign or digit codes of one or more bytes manipulated by the packed or
CONVERT TO BINARY instructions is invalid for packed decimal use. Packed decimal
digits must be in the range 0 through 9, with only the sign digit being a digit in the
range A through F.

2) Fields in decimal (packed) arithmetic overlap incorrectly.

3) A packed decimal multiplicand has too many high-order significant digits.

Possible causes for this abend include:

Subscript error, referenced beyond table


COBOL: working storage not initialized
bad data, should check data for errors
garbage in a field being tested or displayed
move zeroes to group level is display, had sub levels that were not
period missing after imperative statements within AT END clause
binary field in an arithmetic operation is not large enough to accept
result

User Action: Correct the format of the data being manipulated by the packed
decimal instructions in the program and rerun the job.
S0C8 - FIXED POINT OVERFLOW EXCEPTION
System ABEND: S0C8

Description: This ABEND is a fixed-point overflow exception. A high- order


(leftmost) carry out of a significant bit has occurred during a fixed-point add,
subtract, or shift instruction.

User Action: The number being manipulated may be too large for fixed- point
arithmetic instructions. Consider changing the program's algorithm or switching to
floating-point instructions. You can use the SPM machine instruction to disable S0C8
abends by setting the fixed-point overflow enabling bit in the PSW before fixed-point
math is done

S0C9 - FIXED POINT DIVIDE EXCEPTION. INCREASING REGION TO 0M WORKED


FOR GARY STRAITZ ON A JOB HE WAS RUNNING.

System ABEND: S0C9

Description: This ABEND is a fixed-point divide exception. A quotient has


exceeded the register size in a DIVIDE instruction, or the result of a CONVERT TO
BINARY instruction is more than 31 bits long.

User Action: Dividing by zero is the most common cause of this ABEND. Correct
the program logic error that caused the divide exception and rerun the job
-------------------------------------------------------------------------------------------------------------------------
S222 - OPERATOR CANCELED
S228 - STORAGE VIOLATION - PROGRAM MIGHT HAVE BEEN COMPILED USING WRONG
RMODE, AMODE.
S237 - ERROR AT END OF VOLUME. S237-08 MAY BE CAUSED BY INTERNAL AND
EXTERNAL TAPE LABEL NOT MATCHING, TRY WHATTAPE ON TAPE NUMBERS
PRIOR AND RIGHT AFTER MISMATCHED TAPE.
* BLOCK COUNT WRONG ON TRAILER LABEL.
* VOL=SER SPECIFIED WRONG IN JCL.
* TAPE BLOCK COUNT DIDNT AGREE WITH DCB BLOCK COUNT, POSSIBLE
SKIPPED BLOCK DUE TO HARDWARE ERROR.
S322 - TIME OUT (CPU TIME LIMIT EXCEEDED), TRY ADDING TIME PARM
120 CPU MINUTES IS THE SYSTEM DEFAULT FOR EACH STEP IN A JOB.
S400 - INVALID CONTROL - INVALID DCB PARAMETER BLOCK
S522 - TIME OUT (TASKS IN JOB STEP IN WAIT STATE DUE TO UNATTAINABLE
RESOURCE E.G, PHYSICAL DEVICE, DATA SET, CPU)
* PROGRAMMED TIMED OUT WAITING FOR TAPE MOUNT
S722 - TIMEOUT (OUTPUT LIMIT REACHED, JOB EXCEEDED NUMBER OF ALLOWABLE
LINES)
----------------------------------------------------------------------
RETCD - Return codes
----------------------------------------------------------------------
R/C 12 GENERIC ABEND, CHECK OUTPUT FOR SPECIFIC REASON, IE SB37,
CONTENTION.

R/C 12 DO A FIND ON SQL, IF SQLCODE=00000091J THIS IS A DEADLOCK AND


THE JOB SHOULD BE RESTARTED PER THE XT-42 INSTRUCTIONS
IF SQLCODE=00000090M CHECK WITH DATA BASE
ABOUT ENABLE UTILITY AFTER THAT RESTART JOB
PER XT-42

R/C 16 WHEN EXECUTING SYNCSORT,PARM='RC16=ABE' JOB WILL RETURN CODE 16.


MAX TO BOTTOM TO SEE IF ABEND IS EXPLAINED.
* IF JOB HAS THIS TYPE OF JCL - EXEC SORT,REGION=2M,PARM='CORE=
500K',CYL=50, AND JOB FAILS WITH RC16, INCREASE SORT SIZE BY
IN CYL=XX TO INCREASE THE SORT WORK SIZE. THERE WILL BE NO SORT
WORKS IN THE JCL ITSELF TO INCREASE SPACE.

----------------------------------------------------------------------
STACD - File status codes
----------------------------------------------------------------------
I/O STATUS '35' -
DDNAME MISSING (COBOL II).
I/O STATUS '37' -
CHECK FD RECORD LENGTH AGAINST DCB LENGTH (COBOL II).
I/O STATUS '39' -
CHECK BLOCK CONTAINS CLAUSE IN FD (COBOL II).
I/O STATUS '46'
READ PAST END OF DATA ON FILE (COBOL II).
I/O STATUS '47'
READ AFTER FILE CLOSED (COBOL II).
I/O STATUS '48' -
WRITING TO FILE OPENED AS INPUT.
FILE STATUS '92' -
1. ANY I/O REQUEST AGAINST A FILE THAT IS NOT OPEN.
2. ANY I/O REQUEST THAT IS NOT ALLOWED FOR THE OPTION THAT
WAS SPECIFIED WITH THE OPEN STATEMENT. (I.E. READ A FILE
OPENED AS AN OUTPUT OR REWRITE A FILE OPENED AS INPUT).
3. ANY WRITE OR REWRITE OF A RECORD WHOSE LENGTH IS GREATER
THAN THE MAXIMUM SIZE SPECIFIED IN THE FD (DCB).
4. ANY ATTEMPTED ACTION ON A FILE AFTER END-OF-FILE CONDITION
HAS OCCURED.

----------------------------------------------------------------------
SQLCD - SQL return codes
----------------------------------------------------------------------
NOTES:
* IN DB2 RELATED JOBS, DO A FIND ON SQL
SQL 100 - ROW NOT FOUND FOR FETCH--CONTACT PROGRAMMER, RETRY WON'T WORK.
-203 - A REFERENCE TO COLUMN colum-name is AMBIGUOUS
-204 - NAME IS UNDEFINED NANE
-205 - column-name IS NOT A COLUMN OF TABLE table-name
-501 - CURSOR IDENTIFIED IN FETCH OR CLOSE IS NOT OPEN
-502 - CURSOR IDENTIFIED IN OPEN IS ALREADY OPEN
-504 - THE CURSOR NAME cursor-name IS NOT DEFINED
-803 - INSERT/UPDATE VALUES INVALID; CONTACT SYS DEV
-805 - PROGRAM NOT FOUND; PROGRAM NOT BOUND AS PART OK PLAN NAME.
CONTACT SYS DEV.
91J - DEADLOCK, RESTART; LIKE -911.
-904 - DB2-TABLE IS DOWN CONTACT SYSTEM DEV. (RESOURCE UNAVAILABLE)
OR CAN BE A TEMPORARY CONTENTION - RESTART LATER.
-911 - RESOURCE CONTENTION, RESTART AFTER JOB CAUSING CONTENTION ENDS
-913 - RESOURCE CONTENTION, RESTART AFTER JOB CAUSING CONTENTION ENDS
-818 - BIND PROBLEM, RELATED TO PRODUCTION UPDATES.
-923 - DB2 CONNECTION DOWN, CHECK STATUS OF DB2 PRODUCTION

----------------------------------------------------------------------
CICSCD - CICS abend codes
----------------------------------------------------------------------
AEIP - CICS INVREQ CONDITION - IF USING LOGICAL PAGING
CHECK TO SEE IF A MAP W/O PAGING WAS SENT AFTER
ACCUM PAGING INITIATED.
AEIV - LENGERR - INVALID LENGTH ON SEND, RECEIVE, AND
OTHER VERBS
AEY9 - DB2 HAS COME DOWN AND BACK UP BUT HAS NOT BEEN
RE-ATTACHED. TRY ATTACHING BY CODING:
IN CICS4 - "DSNC STRT 5"
APCT - REQUESTED MODULE CANNOT BE LOCATED IN THE PPT
OR ENTRY DISABLED (MODULE NOT FOUND IN THE
LOAD LIBRARY).
ASRA - USUALLY DATA EXCEPTION ERROR.

You might also like