KB Article #179893

Unable to open the CFTIN DD that is pointing to a dataset with LRECL of less than 80

Problem

Upgrading CFT from 3.1 to 3.2


Issue when an LRECL=80 dataset is concatenated with an LRECL=40 dataset


//CFTIN DD DSN=CFT.FILE.CMD(CFTCMD1),DISP=SHR
// DD DSN=CFT.FILE.REPPORT,
// DISP=(OLD,CATLG,CATLG)


Error: Open Error (Error no 21)


EDC5021I


Was working just fine in previous versions.

Resolution

It is possible to read files whose record length is < 80.


The issue is when PDS or PDS/E are concatenated.


Dataset concatenate with CFT 3.2.4 and higher:

  • In case of PDSs concatenation, as specified in the IBM doc "the data set with the largest block size must appear first in the concatenation."
  • It is not possible to concatenate PDSs from a different record length with RECFM=FB

Dataset concatenate with CFT 3.1.3 and below:

  • It was possible to concatenate PDS(s) with the one with the smaller blksize in first position.
  • It is possible to concatenate PDSs with different record length with RECFM=FB


Conclusion:

The new restrictions appeared since the use of the file opening routines in language "C" instead of ASM.


Transfer CFT documentation will be updated accordingly from 3.3.2 SP4.

IBM documentations:

https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.1.0/com.ibm.zos.v2r1.ieab600/iea3b6_Block_sizes_for_concatenated_data_sets.htm

https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.3.0/com.ibm.zos.v2r3.cbcpx01/concat.htm


The CFTIN reading has been enhanced from version 3.2 to support reading under USS, concatenation files with DD* (which was not possible before)