Charles Mills wrote:
I open a QSAM input DCB with zero RECFM, LRECL, and BLKSIZE whose DD is a
JCL-allocated dataset. The dataset is a PDS which exists, but the member
specified in the JCL does not exist. I get an S013-18 on the OPEN as I would
expect. I recover from the S013-18 with a DCB abend exit. I subsequently
close the DCB. The evidence I am seeing indicates that the DCB is not
restored by CLOSE to its pre-OPEN state; that is, the PDS's RECFM, LRECL,
and BLKSIZE are those of the PDS, and no longer zero.
This behavior contradicts my expectations and my impression of normal QSAM
behavior, that CLOSE returns a DCB to its pre-OPEN state. FWIW, I get
exactly the same behavior if I do not close the DCB.
Is this a known behavior of QSAM? Is there a way to avoid it, other than the brute-force method of re-initializing the DCB in my own code? Charles Mills


IIRC, the DCB is filled in at open time with information from the VTOC, DD statment and the program (in that order) and it stays that way. I may have the order differntly, but the system does not remember pre-open DCB state and does not return it to that state at close time. At least I don't remember it ever working that way.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to