- who are using log buffers in above-the-bar storage (BUFSTOR=64), or
- have callers who supply an above-the-bar log record to the IMS Logger, such as:
The two areas of IMS that are exposed to this are the IMS Logger and the 64-bit Fast Path buffer manager.
The IMS Logger is exposed to the problem if the storage allocated for the log buffers crosses a 4GB boundary. If this is the case, a log record will contain inaccurate data and an attempt will be made to inadvertently write to another location in memory. If this location is key 7, the data will be overwritten; if it is not, IMS will ABEND0C4.
The 64-bit Fast Path buffer manager is exposed to the problem if its BPND5 area crosses a 4GB boundary. To encounter the problem, not only would the area have to cross a 4GB boundary, but log record data must exist in the location where the boundary is crossed.
The IMS Support Center is shipping a diagnostic utility as a ++USERMOD which will determine the exposure of a given IMS system. This can help a customer gauge the urgency for which they should take action, if any. The utility runs as a stand-alone batch job and determines:
- If the log buffers are above the bar, and if the storage allocated for the log buffers crosses a 4GB boundary.
- If the 64-bit Fast Path buffer manager is enabled, and if the storage area which might contain a log record crosses a 4GB boundary
File name: IM97624A.trs
The file contains ++USERMODs for IMS versions 12, 13, and 14. Instructions for running the utility are in a ++HOLD card along with its return codes.
If a customer cannot (or does not wish to) run the utility, instructions for determining the exposure via a series of /DIAGNOSE commands are in the ++HOLD card.
(2) Determine exposure from other programs which invoke the ILOG macro:
Installation-written or vendor-written programs can detect if they pass log records which reside above the bar by searching for the flag PRMLL64 which is set by the invoker of ILOG in the ILOG parameter list.
(3) Apply PTF if exposure is identified
If an exposure is identified, the exposed IMS should be:
- Brought down cleanly (for example, with the /CHE FREEZE or /CHE DUMPQ commands)
- Cold start IMS with the PTF applied for the appropriate version. The PTFs can be downloaded from ShopZ and are: V12: UI42725 (APRA PI71688)
- After all previously exposed IMS systems in a data sharing group are successfully started with the PTF applied, if there is the possibility of needing to run a database recovery before regularly scheduled image copies will be taken, it is recommended that image copies be taken of all appropriate databases. This eliminates the possibility of reading potentially corrupt log data during a recovery.
V13: UI42726 (APAR PI71701)
V14: UI42685 (APAR PI71702)
A cold start is necessary to prevent the reading of potentially inaccurate log data.
If you haven't signed up to the Red Alerts by now, you really should do it. Just go over here.