Question:
Is there a way to suppress the DC050001 messages that indicate the DCLOG is x% full?
Answer:
The only way to suppress this message and prevent it from being issued is to modify the route code and destination code in the WTOEXIT.
The frequency with which the DC050001 message is issued depends on how quickly the log fills, and how full the log is when the CV starts up. If the log continues to fill without being offloaded, these messages will indeed appear more frequently. Under normal activity, when the log is not yet close to full, you can expect to see these roughly whenever another 1/8 (12.5%) of the log area is filled until the log is about 85% full, then with increased frequency. Details follow.
The DC/UCF system monitors the available space in the area, and calculates when the next message should be issued. When the amount of unused space in the area reaches that point, the DC050001 Message is issued indicating the percentage of used space in the area. The steps in this procedure are as follows:
- At startup, we calculate 1/8 (12.5%) of the total number of pages in the log area.
- We check the log and record the number of pages already in use, and calculate the number of remaining pages.
- We calculate 1/2 of the number of remaining pages.
- If the number of free pages remaining in the log (from step 2) is less than the number we calculated in step 1 (1/8 of the total log) then we use the number calculated in step 3 to establish our next message point; otherwise we use the number from step 1. We store this value in a field called LWCENT.
- We calculate the page number in the log area that represents when we will reach this calculated percentage, and store it in a field called LWPNXT. This is the logical page number for the next DC050001 message.
- We continue to monitor the available space in the log area.
- We issue the next DC050001 message when the value in LWPNXT is reached.
- When the message is issued, we again recalculate to establish the next threshold value for LWCENT & LWPNXT (steps 2 ? 5, above). When a log offload is completed, we also recalculate this value.
- We continue to issue messages from module RHDCMISC whenever a calculated threshold is reached; we continue to reset that threshold whenever the message is issued, or the log is archived.
An example may help to clarify how this works:
- If the log area contains 4000 pages (page range 22001 to 26000), then 12.5% of the total number of pages in the log area = 500.
- If the log is empty at startup, then we have 0 pages already in use, 4000 remaining pages.
- We calculate 1/8 of the 4000 remaining pages = 500 pages.
- The number of free pages remaining in the log (from step 2) is 4000, which is greater than the value of 500 that we calculated in step 1 (1/8 of the total log), so we use 500 to establish our next message point, and store this in LWCENT.
- Since the log is empty, page number 500 in the area will be page 22501; we store this in LWPNXT.
- We continue to monitor the available space in the log area.
- In the course of this monitoring, when we see that page 22501 has been filled, we calculate how much of the log has actually been filled, and issue a message such as DC050001 V500 T77 DCLOG IS 12% FULL. Depending on how quickly the log is filling up, this may be immediately after that page is filled, or subsequent pages may also have been filled. The percentage will indicate that actual number based on the actual number of pages that were filled when the message is issued.
- At this point we again recalculate to establish the next threshold values for LWCENT & LWPNXT, as follows:
- The log has 500 pages in use, so 3500 pages remain.
- 1/2 of the 3500 remaining pages = 1750 pages.
- The number of free pages remaining (3500) is greater than 500, so we use 500 to establish our next message point, and store this in LWCENT.
- Page 22501 + 500 = 23001, so we s tore this in LWPNXT.
- We continue to monitor, and when we see that page 23001 has been filled we issue next log message DC050001 V500 T77 DCLOG IS 25% FULL. We repeat the calculations as above and find that the next value for LWPNXT is 23501.
- If the log is not offloaded, and continues to fill, we eventually reach a point where the remaining pages are less than 12.5% of the total number of pages in the area. In this example, that happens if we fill page 25501 and issue DC050001 V500 T77 DCLOG IS 87% FULL. At that point we have only 499 pages left in the area, so instead of using 500 pages to calculate our next threshold we use half of the remaining pages, which is 249. We add this to 25501 and move 25750 to LWPNXT.
- When we fill page 25750 we issue the message DC050001 V500 T77 DCLOG IS 93% FULL.
- Since the remaining 250 pages are less than 500, we recalculate a new threshold of 125 pages (half the number of remaining pages), and set 25875 as LWPNXT.
- If we fill page 25875, we issue the message DC050001 V500 T77 DCLOG IS 96% FULL.
- The remaining 125 pages are still less than 500, so we we recalculate a new threshold of 67 pages, and set 25942 as LWPNXT.
- If we fill page 25942, we issue the message DC050001 V500 T77 DCLOG IS 98% FULL.
- At whatever point the log is offloaded, we will see a DC050001 V500 T77 DCLOG IS 0% FULL. The LWPNXT is set back to 22501 and the process begins again.
As you can see in this example, if the log activity follows a consistent pattern, and a log archive is not completed, then the messages will be issued with increasing frequency the closer the log gets to being full (in this example, they will be issued at 12.5%, 25%, ... 87%, 93%, 96%, 98%, 99%, etc). To prevent this, the log area can be made larger; and a WTO exit can be used to initiate a log archive when the percentage indicated in the DC05001 reaches a specified threshold.