Possible VSAM error codes and their meanings.

Community Help: VSAM File Error Codes - Consolidated error code listing

Share your own experience     View front page

Here is a consolidated list of possible mainframe VSAM file error codes and their meaning:

File Status Key (status keys 1 and status keys 2)

0 error code means "succcessfull completion"

0 - 0 No further information

0 - 2 The input-output statement was successfully executed, but a duplicate key was detected. For a READ statement the key value for the current key of reference was equal to the value of the same key in the next record within the current key of reference. For a REWRITE or WRITE statement, the record just written created a duplicate key value for at least one alternate record key for which duplicates are allowed.

0 - 4 A READ statement was successfully executed, but the length of the record being processed did not conform to the fixed file attributes for that file.

0 - 5 An OPEN statement is successfully executed but the referenced optional file is not present at the time the OPEN statement is executed. If the open mode is I-O, the file has been created. Under MVS, the file has been created if the open mode is I-O or EXTEND. This does not apply to VSAM sequential files. File status 0 is returned.

0 - 7 For a CLOSE statement with the NO REWIND, REEL/UNIT, or FOR REMOVAL phrase or for an OPEN statement with the NO REWIND phrase, the referenced file was on a non-reel/unit medium.

1 means "file at END"

1 - 0 A sequential READ statement was attempted and no next logical record existed in the file because the end of the file had been reached, or the first READ was attempted on an optional input file that was not present.

1 - 4 A sequential READ statement was attempted for a relative file and the number of significant digits in the relative record number was larger than the size of the relative key data item described for the file.

2 means "invalid key conditions"

2 -1 A sequence error exists for a sequentially accessed indexed file. The prime record key value has been changed by the program between the successful execution of a READ statement and the execution of the next REWRITE statement for that file, or the ascending requirements for successive record key values were violated.

2 -2 An attempt was made to write a record that would create a duplicate key in a relative file; or an attempt was made to write or rewrite a record that would create a duplicate prime record key or a duplicate alternate record key without the DUPLICATES phrase in an indexed file. This key value applies to an indexed file in which the alternate key has been declared 'UNIQUE'.

2 - 3 An attempt was made to randomly access a record that does not exist in the file, or a START or random READ statement was attempted on an optional input file that was not present.

2 - 4 An attempt was made to write beyond the externally defined boundaries of a relative or indexed file. Or, a sequential WRITE statement was attempted for a relative file and the number of significant digits in the relative record number was larger than the size of the relative key data item described for the file.

3 means "permanent error"

3 - 0 No further information.

3 - 4 A permanent error exists because of a boundary violation; an attempt was made to write beyond the externally- defined boundaries of a sequential file.

3 - 5 An OPEN statement with the INPUT, I-O, or EXTEND phrase was attempted on a non-optional file that was not present.

3 - 7 An OPEN statement was attempted on a file that would not support the open mode specified in the OPEN statement. Possible violations are:
The EXTEND or OUTPUT phrase was specified but the file would not support write operations.
The I-O phrase was specified but the file would not support the input and output operations permitted.
The INPUT phrase was specified but the file would not support read operations.
Under VSE, the EXTEND phrase was specified for a SAM file.

3 - 8 An OPEN statement was attempted on a file previously closed with lock.

3 - 9 The OPEN statement was unsuccessful because a conflict was detected between the fixed file attributes and the attributes specified for that file in the program. These attributes include the organization of the file (sequential, relative, or indexed), the prime record key, the alternate record keys, the code set, the maximum record size, the record type (fixed or variable), and the blocking factor.

4 means "logic file error"

4 - 1 An OPEN statement was attempted for a file in the open mode.

4 -2 A CLOSE statement was attempted for a file not in the open mode.

4 - 3 For a mass storage file in the sequential access mode, the last input-output statement executed for the associated file prior to the execution of a REWRITE statement was not a successfully executed READ statement. For relative and indexed files in the sequential access mode, the last input- output statement executed for the file prior to the execution of a DELETE or REWRITE statement was not a successfully executed READ statement.

4 - 4 A boundary violation exists because an attempt was made to rewrite a record to a file and the record was not the same size as the record being replaced, or an attempt was made to write or rewrite a record that was larger than the largest or smaller than the smallest record allowed by the RECORD IS VARYING clause of the associated file- name.

4 - 5 An attempt has been made to REWRITE a record to a file, and the record is not the same size as the record being replaced. For line sequential files this refers to the physical size of the record, that is after space removal, tab compression and null insertion. In this case, the physical size of the new record is allowed to be smaller than that of the record being replaced.

4 - 6 A sequential READ statement was attempted on a file open in the input or I-O mode and no valid next record had been established because: The preceding READ statement was unsuccessful but did not cause an at end condition. The preceding READ statement caused an at end condition.

4 - 7 The execution of a READ statement was attempted on a file not open in the input or I-O mode.
4 - 8 The execution of a WRITE statement was attempted on a file not open in the I-O, output, or extend mode.

4 - 9 The execution of a DELETE or REWRITE statement was attempted on a file not open in the I-O mode.

9 means "implementor defined errror"

9 - 0 No further information.

9 - 1 For VSAM only: Password failure.

9 - 2 Logic error.

9 - 3 For VSAM only: Resource not available.

9 - 4 For VSAM with CMPR2 compiler- option only: No file position indicator for sequential request.

9 - 5 For VSAM only: Invalid or incomplete file information.

9 - 6 For VSAM under MVS: No DD statement specified for this file.
FOR VSAM and SAM under VSE: No DLBL statement specified for this file.

9 - 7 For VSAM only: OPEN statement execution successful: File integrity verified.














Here is a consolidated list of possible mainframe VSAM file error codes and their meaning:

File Status Key (status keys 1 and status keys 2)

0 error code means "succcessfull completion"

0 - 0 No further information

0 - 2 The input-output statement was successfully executed, but a duplicate key was detected. For a READ statement the key value for the current key of reference was equal to the value of the same key in the next record within the current key of reference. For a REWRITE or WRITE statement, the record just written created a duplicate key value for at least one alternate record key for which duplicates are allowed.

0 - 4 A READ statement was successfully executed, but the length of the record being processed did not conform to the fixed file attributes for that file.

0 - 5 An OPEN statement is successfully executed but the referenced optional file is not present at the time the OPEN statement is executed. If the open mode is I-O, the file has been created. Under MVS, the file has been created if the open mode is I-O or EXTEND. This does not apply to VSAM sequential files. File status 0 is returned.

0 - 7 For a CLOSE statement with the NO REWIND, REEL/UNIT, or FOR REMOVAL phrase or for an OPEN statement with the NO REWIND phrase, the referenced file was on a non-reel/unit medium.

1 means "file at END"

1 - 0 A sequential READ statement was attempted and no next logical record existed in the file because the end of the file had been reached, or the first READ was attempted on an optional input file that was not present.

1 - 4 A sequential READ statement was attempted for a relative file and the number of significant digits in the relative record number was larger than the size of the relative key data item described for the file.

2 means "invalid key conditions"

2 -1 A sequence error exists for a sequentially accessed indexed file. The prime record key value has been changed by the program between the successful execution of a READ statement and the execution of the next REWRITE statement for that file, or the ascending requirements for successive record key values were violated.

2 -2 An attempt was made to write a record that would create a duplicate key in a relative file; or an attempt was made to write or rewrite a record that would create a duplicate prime record key or a duplicate alternate record key without the DUPLICATES phrase in an indexed file. This key value applies to an indexed file in which the alternate key has been declared 'UNIQUE'.

2 - 3 An attempt was made to randomly access a record that does not exist in the file, or a START or random READ statement was attempted on an optional input file that was not present.

2 - 4 An attempt was made to write beyond the externally defined boundaries of a relative or indexed file. Or, a sequential WRITE statement was attempted for a relative file and the number of significant digits in the relative record number was larger than the size of the relative key data item described for the file.

3 means "permanent error"

3 - 0 No further information.

3 - 4 A permanent error exists because of a boundary violation; an attempt was made to write beyond the externally- defined boundaries of a sequential file.

3 - 5 An OPEN statement with the INPUT, I-O, or EXTEND phrase was attempted on a non-optional file that was not present.

3 - 7 An OPEN statement was attempted on a file that would not support the open mode specified in the OPEN statement. Possible violations are:
The EXTEND or OUTPUT phrase was specified but the file would not support write operations.
The I-O phrase was specified but the file would not support the input and output operations permitted.
The INPUT phrase was specified but the file would not support read operations.
Under VSE, the EXTEND phrase was specified for a SAM file.

3 - 8 An OPEN statement was attempted on a file previously closed with lock.

3 - 9 The OPEN statement was unsuccessful because a conflict was detected between the fixed file attributes and the attributes specified for that file in the program. These attributes include the organization of the file (sequential, relative, or indexed), the prime record key, the alternate record keys, the code set, the maximum record size, the record type (fixed or variable), and the blocking factor.

4 means "logic file error"

4 - 1 An OPEN statement was attempted for a file in the open mode.

4 -2 A CLOSE statement was attempted for a file not in the open mode.

4 - 3 For a mass storage file in the sequential access mode, the last input-output statement executed for the associated file prior to the execution of a REWRITE statement was not a successfully executed READ statement. For relative and indexed files in the sequential access mode, the last input- output statement executed for the file prior to the execution of a DELETE or REWRITE statement was not a successfully executed READ statement.

4 - 4 A boundary violation exists because an attempt was made to rewrite a record to a file and the record was not the same size as the record being replaced, or an attempt was made to write or rewrite a record that was larger than the largest or smaller than the smallest record allowed by the RECORD IS VARYING clause of the associated file- name.

4 - 5 An attempt has been made to REWRITE a record to a file, and the record is not the same size as the record being replaced. For line sequential files this refers to the physical size of the record, that is after space removal, tab compression and null insertion. In this case, the physical size of the new record is allowed to be smaller than that of the record being replaced.

4 - 6 A sequential READ statement was attempted on a file open in the input or I-O mode and no valid next record had been established because: The preceding READ statement was unsuccessful but did not cause an at end condition. The preceding READ statement caused an at end condition.

4 - 7 The execution of a READ statement was attempted on a file not open in the input or I-O mode.
4 - 8 The execution of a WRITE statement was attempted on a file not open in the I-O, output, or extend mode.

4 - 9 The execution of a DELETE or REWRITE statement was attempted on a file not open in the I-O mode.

9 means "implementor defined errror"

9 - 0 No further information.

9 - 1 For VSAM only: Password failure.

9 - 2 Logic error.

9 - 3 For VSAM only: Resource not available.

9 - 4 For VSAM with CMPR2 compiler- option only: No file position indicator for sequential request.

9 - 5 For VSAM only: Invalid or incomplete file information.

9 - 6 For VSAM under MVS: No DD statement specified for this file.
FOR VSAM and SAM under VSE: No DLBL statement specified for this file.

9 - 7 For VSAM only: OPEN statement execution successful: File integrity verified.