11.01.2013 Views

ABCs of z/OS System Programming Volume 3 - IBM Redbooks

ABCs of z/OS System Programming Volume 3 - IBM Redbooks

ABCs of z/OS System Programming Volume 3 - IBM Redbooks

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

If you need to share data sets across systems, it is advisable that you share the catalogs that<br />

contain these data sets. A BCS catalog is considered shared when both <strong>of</strong> the following are<br />

true:<br />

► It is defined with SHAREOPTIONS (3 4).<br />

► It resides on a shared device, as defined at HCD.<br />

Attention: To avoid catalog corruption, define a catalog volume on a shared UCB and set<br />

catalog SHAREOPTIONS to (3 4) on all systems sharing a catalog.<br />

Using SHAREOPTIONS 3 means that VSAM does not issue the ENQ SYSVSAM SYSTEMS<br />

for the catalog; SHAREOPTIONS 4 means that the VSAM buffers need to be refreshed.<br />

You can check whether a catalog is shared by running the operator command:<br />

MODIFY CATALOG,ALLOCATED<br />

A flag in the catalog indicates whether the catalog is shared.<br />

If a catalog is not really shared with another system, move the catalog to an unshared device<br />

or alter its SHAREOPTIONS to (3 3). To prevent potential catalog damage, never place a<br />

catalog with SHAREOPTIONS (3 3) on a shared device.<br />

There is one VVR in a shared catalog that is used as a log by all the catalog management<br />

accessing such catalog. This log is used to guarantee the coherency <strong>of</strong> each catalog buffer in<br />

each z/<strong>OS</strong> system.<br />

Guaranteeing current information<br />

For performance reasons, CIs contained in a master catalog are buffered in the catalog<br />

address space (CAS). Optionally (and highly advisable), the user catalogs are buffered in<br />

VLF data space. Thus, before each search in the buffers looking for a match, a simple I/O<br />

operation checking is performed in the log VVR. If the catalog was updated by another<br />

system, the information in the buffer needs to be refreshed by reading the data from the<br />

volume.<br />

The checking also affects performance because, to maintain integrity, for every catalog<br />

access a special VVR in the shared catalog must be read before using the cached version <strong>of</strong><br />

the BCS record. This access implies a DASD reserve and I/O operations.<br />

To avoid having I/O operations to read the VVR, you can use enhanced catalog sharing<br />

(ECS). For information about ECS, see 6.24, “Enhanced catalog sharing” on page 375.<br />

Checking also ensures that the control blocks for the catalog in the CAS are updated. This<br />

occurs if the catalog has been extended or otherwise altered from another system. This<br />

checking maintains data integrity.<br />

344 <strong>ABCs</strong> <strong>of</strong> z/<strong>OS</strong> <strong>System</strong> <strong>Programming</strong> <strong>Volume</strong> 3

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!