Using the new VSAM functions

z/OS V2R2 introduces the following enhancements for VSAM:
  • VSAM dynamic buffer addition – LSR buffering is enhanced with a function called VSAM dynamic buffer addition, which adds buffers if no buffer is available for a given VSAM request. In previous releases, such a request would fail and you would have the option of retrying the request immediately or waiting for other requests to finish and thus free up buffers. When dynamic buffer addition occurs, VSAM issues the new informational message IDA9990I indicating the number and size of buffers and the shared pool to which they were added. No action is required in response to the message, but for performance reasons the user is encouraged to rebuild the shared pool with BLDVRP, specifying an increase in pool size.

    NSR buffering is always built with a sufficient number of buffers, but with the new dynamic buffer addition function, VSAM adds enough buffers to improve I/O efficiency for processing spanned records. This change is transparent and no message is issued. With either NSR or LSR, no message is produced if dynamic buffer addition is not able to add buffers due to mode or storage constraints.

  • Feedback code added to message IDA9999I – when the VSAM Auto Dump function attempts but fails to capture a dump, message IDA9999I is issued with new information including a feedback code indicating the VSAM error and the job name. You can use this information, in the absence of a dump, to diagnosis and respond to the error. For reference, feedback codes are listed in z/OS DFSMSdfp Diagnosis and z/OS DFSMS Macro Instructions for Data Sets.
  • VSAM RLS locking at the control area (CA) level, rather than the data set level. This improves the performance of serialization for the following:
    • VSAM key-sequenced data sets (KSDS): control interval (CI) split, CI reclaim, and spanned record processing
    • Variable-length relative record data sets (VRRDS): CI split and CI reclaim processing.
    To support this enhancement, new values are added to the SMF type 42 record. For more information, refer to the topic about Record type 42 in z/OS MVS System Management Facilities (SMF)
  • VSAM chained I/O for spanned records. For spanned records with NSR, if there are enough extra buffers defined for the data set, VSAM attempts to write all segments of the entire spanned record out to DASD with one single I/O (chained I/O), to improve integrity and I/O performance. For more information, see Acquiring buffers in z/OS® DFSMS Using Data Sets.