A Datacom/DB RETIX job fails with the following error messages:
DB13001E - UNEXPECTED RETURN CODE 13 (3) NO RECORD FOUND DB00817E - I/O ERR - NO RECORD FOUNDThis issue occurs in Datacom/DB version 15.1 during a RETIX operation for a specific database ID (DBID). The database directory (CXX) metadata indicates a record should exist, but the physical I/O operation on the data area fails to locate the record.
The Return Code 13(3) signifies a physical I/O error where a record expected is missing from the data set. This typically indicates an incongruity between the CXX and the control blocks in the physical data files. This corruption could occur due to external factors outside of Datacom/DB processing, such as:
To resolve the RC 13(3) error and re-synchronize the physical data sets with the CXX metadata, perform an initialization recovery of the affected area.
Recovery Steps
Close the DBID and Turn the Access Off: Execute DBUTLTY to close the database and set the area to ACCESS OFF to prevent MUF or batch connections during maintenance.
ACCESS DBID=<dbid>,STATUS=OFF,USERS=FAILDelete and Reallocate Data Sets: Delete and reallocate the physical data sets for the Data Areas that received the 13(03), to eliminate any hardware concern.
Initialize Areas (INIT): Run the DBUTLTY INIT function to prepare the data sets and update the CXX.
INIT DBID=<dbid>,AREA=<areaid>Perform a Null Load: Execute a Null Load to create an empty, synchronized state between the CXX and the physical files. Alternatively, you can load data from a previous DBUTLTY Backup or Extract process.
LOAD DBID=<dbid>,AREA=<areaid>,FORMAT=NONE,SORT=1Restore Access: Set the database access back to its original state.
ACCESS DBID=<dbid>,STATUS=WRITE