+

Search Tips | Advanced Search

The bootstrap data set

The bootstrap data set is required by IBM MQ as a mechanism to reference log data sets, and log records. This information is required during normal processing, and restart recovery.


What the bootstrap data set is for

The bootstrap data set (BSDS) is a VSAM key-sequenced data set (KSDS) that holds information needed by IBM MQ. It contains the following:

  • An inventory of all active and archived log data sets known to IBM MQ. IBM MQ uses this inventory to:

    • Track the active and archived log data sets
    • Locate log records so that it can satisfy log read requests during normal processing
    • Locate log records so that it can handle restart processing

    IBM MQ stores information in the inventory each time an archive log data set is defined or an active log data set is reused. For active logs, the inventory shows which are full and which are available for reuse. The inventory holds the relative byte address (RBA) of each portion of the log held in that data set.

  • A wrap-around inventory of all recent IBM MQ activity. This is needed if you have to restart the queue manager.

The BSDS is required if the queue manager has an error and you have to restart it. IBM MQ must have a BSDS. To minimize the likelihood of problems during a restart, we can configure IBM MQ with dual BSDSs, each recording the same information. Using dual BSDSs is known as running in dual mode. If possible, place the copies on separate volumes. This reduces the risk of them both being lost if the volume is corrupted or destroyed. Use dual BSDSs rather than dual write to DASD.

The BSDS is set up when IBM MQ is customized and we can manage the inventory using the change log inventory utility ( CSQJU003 ). For more information about this utility, see Administer IBM MQ for z/OS . It is referenced by a DD statement in the queue manager startup procedure.

Normally, IBM MQ keeps duplicate copies of the BSDS. If an I/O error occurs, it deallocates the failing copy and continues with a single BSDS. We can restore dual-mode operation, this is described in the Administer IBM MQ for z/OS.

The active logs are first registered in the BSDS when IBM MQ is installed. We cannot replace the active logs without terminating and restarting the queue manager.

Archive log data sets are allocated dynamically. When one is allocated, the data set name is registered in the BSDS. The list of archive log data sets expands as archives are added, and wraps when a user-determined number of entries has been reached. The maximum number of entries is 1000 for single archive logging and 2000 for dual logging.

We can use a tape management system to delete the archive log data sets ( IBM MQ does not have an automated method). Therefore, the information about an archive log data set can be in the BSDS long after the archive log data set has been deleted by the system administrator.

Conversely, the maximum number of archive log data sets could have been exceeded, and the data from the BSDS dropped long before the data set has reached its expiry date.

We can use the following MQSC command to determine the extent of the log, and the name of the active or archive log data set holding the earliest log RBA, required for various types of media or queue manager recovery:
DISPLAY USAGE TYPE(DATASET)

If the system parameter module specifies that archive log data sets are cataloged when allocated, the BSDS points to the integrated catalog facility (ICF) catalog for the information needed for later allocations. Otherwise, the BSDS entries for each volume register the volume serial number and unit information that is needed for later allocations.


The BSDS version

The format of the BSDS varies according to its version. Increasing the version of the BSDS allows new features to be used. The following BSDS versions are supported by IBM MQ:

    Version 1
    Supported by all releases of IBM MQ. A version 1 BSDS supports 6-byte log RBA values.

    Version 2
    Supported by IBM MQ Version 8.0 and higher. A version 2 BSDS enables 8-byte log RBA values, and up to 310 data sets in each active log copy.

    Version 3
    Supported by IBM MQ Version 8.0 and higher. The BSDS is automatically converted to version 3 when more than 31 data sets are added to either active log copy.

We can determine the version of a BSDS by running the print log map utility (CSQJU004). To convert a BSDS from Version 1 to Version 2, run the BSDS conversion utility (CSQJUCNV).

See Larger log Relative Byte Address for more information on 6-byte and 8-byte log RBAs.


Archive log data sets and BSDS copies

Each time a new archive log data set is created, a copy of the BSDS is also created. If the archive log is on tape, the BSDS is the first data set on the first output volume. If the archive log is on DASD, the BSDS is a separate data set.

The data set names of the archive log and the BSDS copy are the same, except that the lowest-level qualifier of the archive log name begins with A and the BSDS copy begins with B, for example:

    Archive log name
    CSQ.ARCHLOG1.E00186.T2336229. A 0000001

    BSDS copy name
    CSQ.ARCHLOG1.E00186.T2336229. B 0000001

If there is a read error while copying the BSDS, the copy is not created, message CSQJ125E is issued, and the offloading to the new archive log data set continues without the BSDS copy.

Parent topic: Logging in IBM MQ for z/OS

Last updated: 2020-10-04