8
MVS ABEND CODES AND THEIR CAUSES Note that abend codes starting with U are User abends, and are not issued by MVS. Any program can issue a User abend and its meaning is determined by the program. In the new Language Environment, COBOL issues several User abends instead of letting MVS issue the abend. If you have the Language Environment, be aware that some of the MVS abends will not appear. This is always in development. If you have corrections or clarifications, please send them in. Thanks to David Rawson for sending information about SE37 for tapes. For books on abend debugging so you'll understand why the abends occur: http://www.theamericanprogrammer.com/books/ books.mainframe.other.shtml S001-4 Wrong length record Input file record length is not equal to the length stated in the DD or the FD. IO error, damaged tape, device malfunction. With disk, reading a dataset that was allocated but never written to. Writing to input file Concatenation of files with different record lengths or record formats. S001-5 Reading after the end of the file by non-COBOL program. COBOL intercepts this and displays "QSAM error, status 92". Out of space on output disk file.

Abend Codes=6 PAGES

Embed Size (px)

Citation preview

Page 1: Abend Codes=6 PAGES

MVS ABEND CODES AND THEIR CAUSES

Note that abend codes starting with U are User abends, and are not issued by MVS.Any program can issue a User abend and its meaning is determined by the program.In the new Language Environment, COBOL issues several User abends instead of letting MVS issue the abend.If you have the Language Environment, be aware that some of the MVS abends will not appear.This is always in development. If you have corrections or clarifications, please send them in. Thanks to David Rawson for sending information about SE37 for tapes.

For books on abend debugging so you'll understand why the abends occur: http://www.theamericanprogrammer.com/books/books.mainframe.other.shtml

S001-4Wrong length recordInput file record length is not equal to the length stated in the DD or the FD.IO error, damaged tape, device malfunction.With disk, reading a dataset that was allocated but never written to.Writing to input fileConcatenation of files with different record lengths or record formats.

S001-5Reading after the end of the file by non-COBOL program.

COBOL intercepts this and displays "QSAM error, status 92". Out of space on output disk file.

S002 With variable format files used for output.

The record is larger than the track size.The record length is greater than allowed maximum 32,768.

The wrong record length is being used on output.The 4-byte record length indicator is wrong.

Record greater than 32,768 bytes

S013-10 A dummy file with no blocksize.

S013-14 A library has run out of space in its directory. You have to backup, delete, and restore the library with IEBCOPY. A dataset is sequential, but the JCL indicates that it is a library.

Page 2: Abend Codes=6 PAGES

S013-18 A library member was specified in the JCL but was not found.

S013-20 The block size is not a multiple of record length.

Check record length in program, compare to actual record length of file

S013-34 The block size was found to be 0. A new file is being created but block size was not in the JCL.

S013-40Reading a file whose JCL has SYSOUT=

S106 The program on the program library was unreadable. Recompile and link.

S122 The job was canceled because it violated some restriction.

A dump was requested

S137 A tape has a bad trailer label. Copy the file with IEBGENER, ignoring the error. The copy will be good. Using LABEL=2 when there's only one dataset on the tape.

S213 A disk dataset was not actually on the volume stated in the VOL=SER=. A disk dataset was not actually on the volume indicated in the catalog.

S222 The job was cancelled because it violated some restriction. No dump was requested.

S237 The block count on a tape trailer label is wrong. Probably caused by hardware error. Copy the file with IEBGENER, ignoring the error. The copy will be good. A problem with the second volume of tape or disk.

S313, 314 An Input/output error in the VTOC of a disk volume. Inform support staff.

Page 3: Abend Codes=6 PAGES

S322 The job used more CPU time than it should have. Either the estimate is wrong or the program is in an uncontrollable loop.

S413 A volume was needed that could not be mounted.

S422 Too many job steps.

S513 Two jobs or DDNAMES wanting same tape at same time.

S522 Job was waiting too long.

S613 A bad tape label.

S637 A bad concatenation, different types of devices were used. An unreadable tape mark or label.

S706 The program on the library was not executable. See linkage editor report that put the program on library.

S713 The tape was unexpired and the operator terminated the job.

S714 Labels on the tape were bad.

S722 Too many lines of print.

S804 Region too small for the program.

S806 Program not on the library. May need a JOBLIB or STEPLIB.

S80A Region too small for the program.

Page 4: Abend Codes=6 PAGES

S813 Right tape volume, wrong dataset name. Right dataset name, wrong tape volume.

S913Security violation.

SA13 Label=n states the wrong number.

SB14 No space in a library directory for this member's name.

SB37 Insufficient disk space.

SD37 Insufficient disk space.

SE37 Insufficient disk space.An E37 on tape datasets is most often caused when the number of requested volumes is exceeded. The default is 5, therefore a request for the sixth volume will fail with a E37.

S0C1 Executing a program with an unresolved external reference. Calling a program and the program was not included during link edit. An uncontrolled loop moved data on top of instructions.

Reading a file that is not openYour SORTIN DCB was not correctMixing compile options RES and NORES in different modules

S0C2 Privileged OperationRead/write to unopened fileAn uncontrolled loop moved data on top of instructions.

S0C4 ProtectionAn uncontrolled loop moved data on top of instructions.referencing a field in a record of a closed filereferencing an item in Linkage-Section when there was no PARM= in the JCL.Calling/called programs have different length for items passed in Linkage Sectionwith COBOL Sort, doing a STOP RUN or GOBACK while

an input or output procedure is still running

S0C5 Addressing.

Page 5: Abend Codes=6 PAGES

Same reasons as for 0C4.Falling through into an ENTRY statementTransferring control into the middle of a SORT procedure.

S0C6 SpecificationBad boundary alignment for binary data.See reasons for 0C4

S0C7 Program attempting to do math on illegal data. Data is not numeric, but should be.

Moving ZEROS to group item whose subordinate itemsare packed-decimal

Uninitialized packed-decimal fields.Record description is wrong. Field starts or ends in the wrong place in the record.

Find record description of creating program.

S0CB Attempting to divide by 0 and not using ON SIZE ERROR

U1002Conflicting file attributes. See S013.

U1005Executing with modules compiled both with RES and NORES

U1006Subscript out of range

U1017Missing DD statement in JCL for DISPLAY or ACCEPT verb

U1020Problem opening or processing a file.Check the file status.

U1026COBOL sort failed.

U1034Same as SB37

U1035Conflicting DCB parameters. Same as S013.

U1037

Page 6: Abend Codes=6 PAGES

Program control falls through the last physical statement in program,which is not GOBACK/STOP RUN.

U1056Program didn’t close a file before ending

U1066, U1075Conflicting DCB information for file defined as EXTERNAL

U1072, U1073, U1074Illegal numbers in reference modification

U3000COBOL LE intercepted the abend. Messages in SYSDBOUT.

U4038COBOL LE intercepted the abend. Messages in CEEDUMP.

Mainframe:Mainframe is a High performance Multi User computer system which is the most scalable, available, reliable and secured machine in the world capable of performing some Trillion Instructions per second (TIPS) with the following characteristics

1) Reliable single-thread performance, which is essential for reasonable operations against a database.

2) Maximum I/O connectivity, which means mainframes excel at providing for huge disk farms.

3) Maximum I/O bandwidth, so connections between drives and processors have few choke-points

4) Reliability--mainframes often allow for "graceful degradation" and service while the system is running.

Applications of mainframe various from computing the Random number series to Airline ticket reservation.

In olden days Mainframes are used only in Armed forces. But Now mainframe systems are enhanced to interact with web servers (Internet Servers). So you can host your site and access the Mainframe system even through the Internet Explorer.