Planning log streams for use by your forward recovery logs

CICS performs the logging for RLS and non-RLS data sets.

You can share a forward recovery log stream between multiple data sets - you do not need to define a log stream for each forward-recoverable data set. Your decision is a balance of transaction performance, rapid recovery, and the work involved in managing a large number of log streams.

For a data set open in RLS mode, the MVS logger merges all the forward recovery log records from the various CICS systems on to the shared forward recovery log.

Some points to consider are:
  • All data sets used by one transaction should use the same log stream (to reduce the number of log streams written to at syncpoint).
  • A good starting point is to use the same forward recovery log ID that you use in an earlier CICS release.
  • Share a forward recovery log stream between data sets that:
    • Have similar security requirements
    • Have similar backup frequency
    • Are likely to need restoring in their entirety at the same time
  • Log stream names should relate to the data sets. For example, PAYROLL.data_sets could be mapped to a forward recovery log named PAYROLL.FWDRECOV.PAYLOG.
  • The last qualifier of the stream name is used as the CICS resource name for dispatcher waits. Therefore, if it is self-explanatory, it can be helpful when interpreting monitoring information and CICS trace entries.
  • Don't mix high update frequency data sets with low update frequency data sets, because this causes a disproportionate amount of unwanted log data to be read during recovery of low frequency data sets.
  • Don't put all high update frequency data sets on a single log stream because you could exceed the throughput capacity of the stream.
  • If you define too many data sets to a single log stream, you could experience frequent structure-full events when the log stream can't keep up with data flow.
  • Redundant data should be deleted from log streams periodically. On OS/390® Release 2 or earlier, this is a user responsibility, and must be done before the system logger inventory entry exceeds the limit of 168 data sets per log stream. On OS/390 Release 3 or later, you can specify that redundant data is to be deleted automatically from general log streams, by defining them with AUTODELETE(YES) RETPD(dddd). For information about the AUTODELETE and RETPD MVS parameters, see Definitions required for VSAM RLS support>.

    Typically, for a forward recovery log, deletion of old data is related to the data backup frequency. For example, you might keep the 4 most recent generations of backup, and when you delete a redundant backup generation you should also delete the corresponding redundant forward recovery log records. These are the records older than the redundant backup because they are no longer needed for forward recovery.

    For information about IBM® CICS VSAM Recovery, see CICS VSAM Recovery for z/OS.