Using LLACOPY to refresh LLA directories

To enhance performance by reducing I/O overhead, a subsystem (such as CICS®) can keep copies of directories in storage. This allows the subsystem to quickly access modules instead of using I/O to search the directories on DASD.

The LLACOPY macro enables the subsystem to manage the subsystem libraries. It allows the subsystem to keep the library lookaside facility (LLA) directory synchronously updated with the subsystem copy of the data set directory. For information about LLA, see z/OS MVS Initialization and Tuning Guide.

LLACOPY synchronously refreshes the LLA directory and returns the new directory entries to the caller. It has the same parameters as the BLDL macro. LLACOPY obtains the requested directory entries from DASD by using BLDL.

If LLACOPY finds the directory entries for the requested names, it fills the caller's BLDL list with those entries. If LLACOPY cannot find a particular member, it does not fill in the entry area in the BLDL list for that member.

If LLACOPY finds the requested names in LLA-managed libraries, it changes the LLA directory by either adding the directory entry (if new) or updating the existing directory entry.

LLACOPY can also inform LLA of members that have been removed from datasets. If LLACOPY does not find the member name in the DASD directory, but the member name is in the LLA directory, LLACOPY removes the LLA directory entry.

LLACOPY returns directory entries to the caller but does not refresh the LLA directory when any of the following instances occur:
  • An abend (LLACOPY may not return directory entries).
  • The version of MVS™ installed is prior to Version 3 Release 1.3.
  • LLA is not active. There was no LLA directory to update.
  • You executed LLACOPY against non-LLA-managed datasets.
For additional information concerning the restrictions and use of LLACOPY, see z/OS MVS Programming: Authorized Assembler Services Reference LLA-SDU.