Executing CA Fast Load for DB2 for z/OS (PFL) with DSNTYPE=PIPE for the input file on the //SYSULD DD and encountering the following symptoms:
PFL0092W - The input data is not the same version as the table version.
PFL4018W - Errors causing rows to be discarded exceeded 1,000
PFL1106I - Status: INDDN: SYSULD Row count: ..................1,508
PFL0807I - Selection Rejects ...................1,392
In addition the input record count is incorrect where 1508 is being read but only 580 input records are expected.
The following is same JCL for the input SYSULD allocation:
//SYSULD DD PATH='/tmp/&SYSUID._put_sysrec1',FILEDATA=BINARY,
// PATHOPTS=(ORDONLY),PATHDISP=(DELETE,DELETE),DSNTYPE=PIPE,
// RECFM=FB
During the PFL execution there is a requirement for an LRECL= specification when using DSNTYPE=PIPE.
Specify FILEDATA=BINARY and the LRECL automatically calculated CA Fast Unload for DB2 for z/OS (PFU) for a regular output data set during the PFL execution.
The best method to determine the LRECL is to execute PFU with LIMIT 1 to a regular output dataset. Explicitly specify the LRECL within the PFL DSNTYPE=PIPE execution otherwise I/O failures may occur.
//SYSULD DD PATH='/tmp/&SYSUID._put_sysrec1',FILEDATA=BINARY,
// PATHOPTS=(ORDONLY),PATHDISP=(DELETE,DELETE),DSNTYPE=PIPE,
// RECFM=FB,LRECL=64