BillyBoyo wrote:... 30,000 members in a single PDS? How long does it take to add a new member called "A"? Don't experiment until you know the PDS is good
I'd like to know why the TS believes there is a corrupted member in the PDS!
The issue BillyBoyo raised about how long it would take to add a low member name in the collating sequence to the data set got me interested. I wrote a small Assembler program to add members M30000 through M00001, in that order. I did cheat in one respect. I did not attempt to write ISPF directory statistics. While I could have done that, it wasn't worth the effort for a throw a way program, but it did speed things up: the final directory used 1429 blocks, much less than the 5000 blocks required if the program wrote ISPF directory stats.
An Assembler programmer using BPAM to write to a PDS uses the STOW macro to add a member. When adding a member, the STOW macro does more than update the directory. It also writes a DASD end of file record for the member, and that requires a small amount of time.
I instrumented the program to collect the elapsed time required to execute the STOW macro. It rexorded the time in the next member it wrote. M29999 has the time required for the STOW macro for member M30000, and so on. M00001 has the time for M00002. I did not record the time for M00001.
Here are the raw times.
M00002 0.07 seconds
M00003 0.08 seconds
M00004 0.08 seconds
M30000 0.00 seconds