Allocating log data sets

IMS creates logs of activity that are based on online executions. You must allocate sufficient data sets on DASD for the log data associated with your online activity, including online log data sets, system log data sets, and log write-ahead data sets.

For online IMS executions, allocate the IMS log to multiple data sets on DASD. Log records are initially written to an online log data set (OLDS), and then copied (archived) to the system log data set (SLDS). An SLDS can be on DASD or tape. Batch users can allocate a log (also known as the system log data set) to DASD or tape.

A data set containing log records that reflect completed operations not yet written to an online log data set is a write-ahead data set (WADS). For log write-ahead, provide the WADS. You can specify log write-ahead options in the DCLWA keyword of the TRANSACT macro. Log records created by IMS can be written to a WADS before the results of processing are externalized. Thus, a WADS contains a copy of committed log records in the online log data set buffers that have not yet been written to an OLDS.

You do not need DD statements for this log and the system output log (IEFRDER and IEFRDER2) for online IMS executions; you must remove the DD statements from your JCL. With batch, however, the IEFRDER DD statement is required for logging. If you require a secondary log, the ddnames for the primary and secondary log data sets must be IEFRDER and IEFRDER2. The system rounds the BLKSIZE for IEFRDER and IEFRDER2 data sets to a doubleword boundary (a multiple of eight).
Restriction:
  • IEFRDER and IEFRDER2 log data sets do not support compression.

You can specify the IMSMON DD statement for both the DB and IMS Monitor data sets. You can allocate the IMSMON data set on DASD or tape (SL or SUL). You need a minimum of two buffers. If the block size you specify is smaller than the system-calculated minimum, the latter is used. The block size is rounded up to a doubleword boundary (a multiple of eight). You can specify the IMSMON data set through a JCL DD statement or a DFSMDA dynamic allocation member. If the block size is dynamically allocated, the default is 4096. If it is JCL allocated and DCB=BLKSIZE=NNNN is not specified in the IMSMON DD statement, the default block size is 1048 even if a larger block size is preallocated.

If you do not specify BLKSIZE, or if BLKSIZE=0 is coded in the JCL, the default for batch log data sets is LRECL=4092 and BLKSIZE=4096.

If you are using a 64-bit capable environment with OLDS blocksize that is a multiple of 4 K, and you allocate a tape device for this IMSMON, it must be a 64-bit capable device. If the tape device is not 64-bit capable, the monitor does not start and you receive the following error message: DFS2201I OPEN ERROR FOR IMSMON.

Recommendation: Use the DFSMS extended format on SMS-managed striped data sets to move the log buffers above the 2 GB boundary, to free ESCA storage for other uses, and to improve logging performance.