Spool Housekeeping Return and Reason Codes

When you run a spool housekeeping operation, the return code is displayed in the console log, and can be one of the following:

Return code Explanation
0 The operation completed successfully without errors.
4 No spool records were found. You would expect this when a server is first started, if spool housekeeping is scheduled via CICS.
8 This is a warning, and the processing continues. It indicates that a spool record that was a candidate for deletion could not be deleted (possibly in use), or a catalog entry for a spool record that was a candidate for deletion is not present.
12 This indicates a configuration parsing error. This code is applicable to the MVSSPLHK housekeeping process only.
16 This indicates a fatal error. Processing is terminated. Generally, it is the result of an unexpected file status code from IO on spldsn.dat, spljob.dat, spoolmsg.dat, spoolsub.dat, spoolout.dat, mvsspl01.dat or catalog.dat.

These return codes indicate that the file i/o on the associated file has returned an unexpected status code. This can happen for a number of reasons. For example, because another process has the file locked, because an expected record no longer exists or an invalid catalog or archive location has been specified.

If the resulting return code indicates a serious error (16) or the errors are persistent, CTF tracing for the MVSP0027 housekeeping process is available (which will log the file status codes encountered for a precise diagnosis). The appropriate settings for CTF are:

mftrace.level.mf.mvs.mvsp0027  = debug 
mftrace.comp.mf.mvs.mvsp0027#entry      = true
mftrace.comp.mf.mvs.mvsp0027#delete     = true
mftrace.comp.mf.mvs.mvsp0027#warning    = true

CTF tracing for the MVSSPLHK process is not required, because diagnostic information is written to the SYSPRINT file.

When CTF tracing is set or you are running the MVSSPLHK process, and a spool housekeeping operation fails, the return code is accompanied by a reason code. The reason code can help locate the source of the spool housekeeping problem, and can also help to diagnose errors.

Note: Reason codes 01 to 53 (except 06 and 07) are applicable to all housekeeping processes; reason codes 06, 07, and 60 onwards are applicable to the MVSSPLHK process only.
Reason code Explanation
01, 02 Read next record on casspool operation failed.
03 Purge record on casspool operation failed.
04 Delete record on casspool operation failed.
05 Start on casspool operation failed.
06 Casspool open error.
07 Casspool read key error.
10 Open on mvsspool operation failed.
11 Delete record on mvsspool operation failed.
12 Read next record on mvsspool operation failed.
13 Keyed read on mvsspool operation failed.
14 Unable to find the SPLJOB file.
15 Failed to open the SPLMSG file.
16 Start of SPLMSG failed.
17 Delete record from SPLMSG failed.
18 Read next record of SPLMSG failed.
19 Read keyed record of SPLMSG failed.
20 Open on profile (the .pro file describes the spool archive file for data file editor - only when archiving requested ) operation failed.
21 Write on profile ( only when archiving requested ) operation failed.
30 The Copy spool to archive operation failed. The spool archive directory may not exist.
40 The Read record on catalog.dat file operation failed.
41 The delete record from catalog.dat file operation failed.
42 A get next record from catalog.dat file operation failed.
43 A start not greater than on catalog.dat file operation failed.
44 An undefined error occurred while performing a catalog file operation.
45 Catalog record insert failed.
50 A start not greater than on MVSOUTIO.dat failed while removing expired output dataset entries.
51 A read next on MVSOUTIO.dat failed while removing expired output dataset entries.
52 A delete on MVSOUTIO.dat failed while removing expired output dataset entries.
53 An undefined error occurred while performing a file operation on MVSOUTIO.dat while removing expired output dataset entries.
60 Archive catalog open error
61 Archive catalog write error
63 Other archive catalog error
64 Archive casspool open error
65 Archive casspool write error
66 Other archive casspool error
67 Archive mvsspool (spool file information) open error
68 Archive mvsspool write error
69 Other archive mvsspool error
70 Configuration (either CONFIGI or SYSIN) open error
71 Configuration read error
72 Other configuration error
73 INDEXO open error
74 INDEXO write error
75 Other INDEXO error
76 Archive MVSOUTIO (OUTPUT statement information) open error
77 Archive MVSOUTIO write error
78 Other archive MVSOUTIO error
79 Error writing archive SPLMSG record.
80 Report file (SYSPRINT, SYSOUT, SYSERR) open error
81 Report file (SYSPRINT, SYSOUT, SYSERR) write error
82 Other report file (SYSPRINT, SYSOUT, SYSERR) error
83 Report file close (SYSPRINT, SYSOUT, SYSERR) error
84 Error opening archive SPLSUB file.
85 Write to archive SPLSUB failed.
86 Error closing the archive SPLSUB file.
90 Archive already exists - when doing a FULL archive then the archive directory (created under the MF_SPOOL_ARCHIVE_LOC) must not exist.
91 Error parsing the configuration file (CONFIGI or SYSIN)
92 Invalid configuration setting
99 Other processing error