Created On:  24 April 2012

Problem:

I have a COBOL program which is trying to create an indexed file. I named the file: xyz.dat, but when the COBOL program runs it creates a xyz.dat file and a second file with an extension of IDX named xyz.dat.idx but on my other machine it is as expected; the filenames are xyz.dat and xyz.idx, not xyz.dat.idx. What is causing this?

Resolution:

In our case we had two environments. One worked, one failed. When creating an Indexed file the index name was being created as xyz.dat.idx when it failed, but in the working environment the new file was named xyz.idx.  The answer is to use an EXTFH.CFG with the option of IDXNAMETYPE=0. The working environment was checked and it did use an EXTFH.CFG file with IDXNAMETYPE=0 but the failing environment did not have an EXTFH.CFG file.  Also, the REBUILD utility gave the same results. This is because REBUILD, like the Cobol program, has its I/O request processed by the Micro Focus File Handler.  It should be noted that although IDXNAMETYPE=0 is our default, the customer was using Server Express v5.0 and it appears we had a bug on that older product. They used an EXTFH.CFG so both environments matched.

Incident #2568743