Structure size for user journal and autojournal usage

You can use the z Systems® Coupling Facility Structure Sizer tool (CFSizer), or the formulas provided, to calculate storage requirements for the user journal and autojournal.

The CFSizer calculations assume that the coupling facility is at the current CFLEVEL. The formulas provided assume the coupling facility is at CFLEVEL 11.

Using CFSizer to determine structure size

CFSizer is a web-based application that communicates with a coupling facility at a current CFLEVEL to calculate storage requirements. For the user journal and autojournal, it calculates suitable values for the INITSIZE and SIZE parameters. See CFSizer.

To use CFSizer to calculate storage requirements for the user journal and autojournal, enter the following information:
Writes per second
The number of log blocks written to the log stream per second from a single system. This value is available in the CICS® statistics reports. See Logstream reports.
Maximum buffer size
The size, in bytes, of the largest log block that can be written to a logstream. The value must be between 1 and 65532. This value corresponds to the MAXBUFSIZE value in the definition of the logstream coupling facility structure. See Defining coupling facility structures.
Average buffer size
The average size in bytes of log blocks written to all logstreams. This input is used to determine the initial entry to element ratio of the structure. This value corresponds to the AVGBUFSIZE value in the definition of the logstream coupling facility structure. See Defining coupling facility structures.
Number of logstreams
The number of logstreams allocated to a structure. This must be a value from 0 to 512. In a CICS environment, the number of logstreams should be between 10 and 20.
For the user journal and autojournal, CFSizer uses the following default values:
Highoffload
80
Lowoffload
0

Calculation of structure size

Calculate values for the INITSIZE and SIZE attributes. See Calculation of INITSIZE for DFHLOG and Calculation of SIZE for DFHLOG.

To calculate a value for number_of_entries, use the following formula:
number_of_entries = writespersec * 12.5

See the explanation of writespersec later in this topic.

For journals with log blocks that are not forced to the log stream, the average block size tends to be slightly less than the MAXBUFSIZE value defined for the coupling facility structure.

For journals with log blocks that are forced to the log, using the EXEC CICS WAIT JOURNALNAME or EXEC CICS WAIT JOURNALNUM commands, or using the WAIT option of the EXEC CICS WRITE JOURNALNAME or EXEC CICS WRITE JOURNALNUM commands, you can calculate AVGBUFSIZE from the weighted average of the data logged for each journal logging to the same log stream for a given CICS system.
AVGBUFSIZE = (bytespersec / (writespersec) + 36
where:
  • bytespersec = (N1 * Wr1 * (D1 + rechdr) + ... (Nn *Wrn * (Dn + rechdr)))
  • writespersec = lesser of 25 or ((N1 * Wa1) + ... + (Nn * Wan)) where:
    • N1, .... Nn is the number of transactions per second writing to the journal.
    • Wr1 .... Wrn is the number of write requests per transaction.
    • Wa1 .... Wan is the number of wait requests per transaction.
    • D1 .... Dn is the average record length of each journal record.
    • rechdr is the record header length of each record.

Autojournal records are issued from file control. They might be DATA SET NAME records, which consist of a 204-byte record header, and no further data. Alternatively, they might be READ ONLY, READ UPDATE, WRITE UPDATE, WRITE ADD, or WRITE ADD COMPLETE records. In this case, rechdr is 84 bytes and is followed by the file control record itself.

User journal records consist of a 68-byte record header, followed by the user prefix and the user data.

If the result of the calculation shows a value for AVGBUFSIZE that is greater than the value defined for MAXBUFSIZE, the value defined for MAXBUFSIZE is taken as the value for AVGBUFSIZE, and writespersec is calculated as follows:
writespersec = bytespersec / (MAXBUFSIZE - 36)