Database I/O error management

When a database I/O error occurs, IMS copies the buffer contents of the error block/control interval (CI) to a virtual buffer. A subsequent DL/I request causes the error block/CI to be read back into the buffer pool.

The write error information and buffers are maintained across restarts, deferring recovery to a convenient time. I/O error retry is automatically performed at database close time. If the retry operation is successful, the error condition no longer exists and recovery is not needed.

When a database I/O error occurs in a sysplex environment, the local system maintains the buffer and informs all members of the data-sharing group with registered interest in the database that the CI is unavailable. Subsequent DL/I requests for that CI receive a failure return code as long as the I/O error persists.

Although you do not have to register your databases with DBRC in order for error handling to work, registration is required for HALDB databases and highly recommended for all other types of full-function databases.

The integrated HALDB Online Reorganization function can help eliminate the HALDB I/O errors on sharing systems. If an online reorganization is started on the system that owns the write error EEQE, the online reorganization function can take the local copy of the buffer and write it out to the output data sets. After the buffer is written to the output data sets, the updates in the buffer are available to all sharing systems again.

Attention: If an error occurs on a database registered with DBRC and the system stops, the database could be damaged if the system is restarted and a /DBR command is not issued prior to accessing the database. The restart causes the error buffers to be restored as they were when the system stopped. If the same block had been updated during the batch run, the batch update would be overlaid.