First CKR2251 message is
CKR2251 00 Simulating system PLEX with complex PRD default PR18 because no CKFREEZE file matching C1ACC00 SYS611 SYSSA.#ZSECURE.SSZ
You could get the whole dsname of the ACCESS data set by increasing the LRECL for SYSPRINT, but from the ddname C1ACC00 we see it is reading
CKR1412 00 Started processing TYPE=ACCESS file C1ACC00 SYS611 SYSSA.#ZSECURE.SSZSECAM.PRDPLEX.R18MON
Now, lets find the ALLOC commands
1 | /* zSecure Unload: Daily - All Systems */
2 | ALLOC TYPE=UNLOAD DD=C2UNL00 COMPLEX=PRD
18 | /* zSecure CKFREEZE Daily - All Systems */
19 | alloc type=CKFREEZE DD=C3IOC00 COMPLEX=PRD
20 | /* alloc type=CKFREEZE DD=C3IOC01 COMPLEX=PRD
21*| alloc type=CKFREEZE DD=C3IOC02 COMPLEX=PRD
22*| alloc type=CKFREEZE DD=C3IOC03 COMPLEX=PRD
23*| alloc type=CKFREEZE DD=C3IOC04 COMPLEX=PRD
24*| alloc type=CKFREEZE DD=C3IOC05 COMPLEX=PRD
25*| alloc type=CKFREEZE DD=C3IOC06 COMPLEX=PRD
26*| alloc type=CKFREEZE DD=C3IOC07 COMPLEX=PRD
27*| alloc type=CKFREEZE DD=C3IOC08 COMPLEX=PRD
28*| alloc type=CKFREEZE DD=C3IOC09 COMPLEX=PRD
29*| alloc type=CKFREEZE DD=C3IOC0A COMPLEX=PRD
30*| alloc type=CKFREEZE DD=C3IOC0B COMPLEX=PRD */
81 | ALLOC TYPE=ACCESS DD=C1ACC00 COMPLEX=PRD
The asterisks in the line number indicate you commented out the majority of CKFREEZE allocations, and this is reflected in CKR0615, because it only shows 1 CKFREEZE for the complex:
CKR0615 00 Input system structure overview (default system PR18 complex PRD):
Ver Complex Func Prod System Timestamp Filename Volser Dsname
PRD Main RACF PR18 21 Mar 2022 00:00 C2UNL00 SYS002 SYSSA.RACF.PRDPLEX.ZSECUNLD.DAILY.G0042V00
RACF PR18 21 Mar 2022 08:08 C3IOC00 SYS004 SYSSA.#ZSECURE.XDS3645A.SPR18.CKFREEZE
Back to CKR2251. It suggests that a record was found in SYSSA.#ZSECURE.SSZSECAM.PRDPLEX.R18MON with the value PLEX in the position where the system ID is expected. Obviously, there is no CKFREEZE collected on an LPAR called PLEX, but luckily you specified COMPLEX=PRD on the ALLOC TYPE=ACCESS command, so CKR2251 tells you the
faked system is mapped to PR18, the only system in complex PRD.
Next bunch of CKR2251 messages shows that another ACCESS data set also contains this same fake system id:
CKR2251 00 Simulating system PLEX with complex TST default DV26 because no CKFREEZE file matching C1ACC20 SYS603 SYSSA.#ZSECURE.SSZ
and when we look up the ALLOC command for C1ACC20 we see this is indeed mapped to complex TST.
86 | ALLOC TYPE=ACCESS DD=C1ACC20 COMPLEX=TST
CKR0615 shows that this complex has several CKFREEZEs allocated, but none of them is PLEX:
CKR0615 00 Input system structure overview (default system PR18 complex PRD):
Ver Complex Func Prod System Timestamp Filename Volser Dsname
TST Main RACF DV22 21 Mar 2022 00:08 C2UNL20 SYS602 SYSSA.RACF.TSTPLEX.ZSECUNLD.DAILY
RACF DV21 21 Mar 2022 06:32 C3IOC20 SYS623 SYSSA.#ZSECURE.XDS3646A.SDV21.CKFREEZE
RACF DV22 21 Mar 2022 06:44 C3IOC21 SYS618 SYSSA.#ZSECURE.XDS3647A.SDV22.CKFREEZE
RACF DV25 21 Mar 2022 06:54 C3IOC22 SYS621 SYSSA.#ZSECURE.XDS3650A.SDV25.CKFREEZE
RACF DV26 21 Mar 2022 07:05 C3IOC23 SYS611 SYSSA.#ZSECURE.XDS3651A.SDV26.CKFREEZE
Why DV26 is assigned, and not DV20, is not documented, really, but it is the last ALLOC command for the complex.
Now for the reason we see CKR2251 at all. zSecure reads the allocated ACCESS data sets in parallel.
For each ACCESS record, it finds the corresponding system anchor, that was populated from CKFREEZE data sets. If there is no corresponding system, it uses the complex from the ALLOC command to
fake map the system name.
When this mapping process was first written, a slew of CKR2251 messages was produced, so the algorithm was improved to test if the same mapping was applied in the previous record, and if so, to suppress CKR2251. With 1 input data set this simple algorithm resulted in 1 visible message.
However, if you have a mix of input data sets, the
previous system processed field will frequently have something other than PLEX, in which case the messages "I found a record for PLEX that I couldn't map" is issued, over and over.
You could add a SUPPRESS MSG=2251, but then you will be unaware of missing CKFREEZE data sets.
You could stop faking the system ID with PLEX, and allocate (small) CKFREEZEs for all LPARs.
Of zSecure could be improved to prevent an avalanche of CKR2251.
However, I see that a complex is assigned to each ACCESS data set, so I would expect your report to be ok.
For light reading and keeping perspective I recommend
https://thedailywtf.com/------------------------------
Rob van Hoboken
------------------------------