When browsing the .log files (qapp.log and qcap.log for Q Replication or app.log and cap.log for SQL Replication) you might occasionally see the following entry:
***** * * * I/O error detected, I/O terminated * * * *****
This is normal behavior when browsing or copying a data set that is opened for write with share.
When any task OPENS a PS, VB, or VBA dataset for OUTPUT with shared write, the task starts writing to the data set, overwriting whatever data previously existed. As that write continues, the end of file (EOF) can be overwritten, leaving the data set with no valid EOF indicator. This marker is rewritten when the data set is closed by the owning task so the situation is transitory and completely normal.
If another task reads the data set while there is no EOF, it might read past the valid data in the data set into space that is allocated but has not yet been written out by the replication server tasks. This situation results in an I/O error, for example IEB308I or IEB351I from IEBGENER. This is a normal exception condition under these circumstances.
Resolving the problem
To completely read or copy the Replication Server log files without I/O errors, you need to shut down capture or apply.