CA Fast Load with DSNTYPE=PIPE and receiving multiple errors such as selection rejects and incorrect input record counts.

Document ID : KB000007190
Last Modified Date : 14/02/2018
Show Technical Document Details
Issue:

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  

Resolution:

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