The logging files have the following file structure:ACCESS-METHOD=ISAM,RECORD-FORMAT=V,KEY-POSITION=5,KEY-LENGTH=32
The ISAM key consists of the archive number, the file sequence number, the date, the time and the catalog ID. This ensures that the logging records will still be unique even if several logging files from different systems are combined.
The complete, updated catalog entry is logged on the basis of the ISAM key. Its length depends on the format of the MAREN catalog. The length of the logging records is 1050 bytes.
If no other block size was selected when assigning the logging file in the start procedure for the control program, the logging file is created with BUFFER-LENGTH=STD(1).
Exception: If the logging file is created on an NK4 pubset, it is given a block size of (STD,2).
Record structure of the logging file
Length in bytes | Designation / Value range / Meaning |
4 | Record length field |
6 4 10 8 4 | VSN File sequence number These fields form Date yyyy-mm-dd. the ISAM key Time (hh:mm:ss) Four-character catalog ID of the home pubset of the system |
1014 | Complete, i.e. already updated catalog entry. |
For performance reasons, as well as for increasing availability and maintaining data security, a separate logging file is kept for each system. If the parameter SHARED-UPDATE=*YES has been specified in the file allocation for a logging file, the MARENADM statement SHOW-MAREN-FILE can be used to access the current logging file.
If the system-specific MAREN parameter LOGGING is included, a record is written to a logging file every time a change is made to a catalog entry.
Modifications of the MAREN parameter, e.g. via MODIFY-MAREN-PARAMETERS, will also be written to the logging file.
Variable block size for the MAREN logging file
If a logging file is assigned in the MARENCP start procedure, the command ADD-FILE-LINK with the parameter BUFFER-LENGTH=*STD(SIZE=n) can be used to specify a block size other than the standard block size. The user must ensure that sufficient storage space is reserved when assigning the file. With a blocking factor of n, the primary allocation (PRIMARY ALLOCATION) must be at least 2n+1 for K-ISAM and at least 2n+2 for NK-ISAM; the secondary allocation (SECONDARY-ALLOCATION) must be at least n.
If a new logging file is opened later during an active MAREN session by means of the MARENADM statement CHANGE-LOGGING-FILE, this is opened with the same blocking factor and the same secondary allocation as the previous logging file and with a sufficiently large primary allocation.
If the new logging file is created on an NK4 pubset, the old logging file must have an even-numbered block size, e.g. STD(2). If this is not the case, MARENCP is aborted.
Updating the MAREN catalog
The MARENADM statement UPDATE-MAREN-CATALOG and all the information from the logging files enable the MAREN catalog to be brought up to the current status or reconstructed if inconsistentcies or defects occur, see section “Catalog inconsistency”.