UNDO log structure overview

Every undo log block consists of a Block Header (MVSLogBlockHeader type), followed by log records. Every log record includes a standard General Log Header (GenLogRecord type), followed by record data.

Record data consists of a fixed part (the prefix), and an optional variable part (the caller data).

The logical substream of Undo log records related to a job step consist of:
  1. One Undo Start record (first in the substream)
  2. Zero or more Undo Read-for Update/Erase records
  3. Zero or more Undo Write-for-Add records
  4. One Undo End record (last in the substream).

Undo Start and Undo End records (record data) consist of only a fixed prefix. Undo Read-for-Update/Erase and Undo Write-for-Add records (the record data) contain caller data as well.