Migrating an ADCD z/OS release to the next release: Proclib members

Start here:Migrating an ADCD z/OS release to the next release.

The ADCD supplied proclib members may change from release to release, for example the volser of disks will change from D5SYS1 to A3SYS1, and you may have a copy in user…proclib which overrides the ADCD supplied members.

What is different between your USER.Z25D.PROCLIB and ADCD.Z25D.PROCLIB?

It is good practice to see what you have changed in the USER.*.PROCLIB.

Use ISPF 3.4 to look at ADCD.Z25D.PROCLIB, display the members, and sort on changed. If you were careful you have not changed anything in this library, but made your changes in USER.Z25D.PROCLIB.

Compare USER.Z25D.PROCLIB and ADCD.Z25D.PROCLIB

You can use ISPF 3.13, the SuperCE utility to compare the members.

I specified

  • New DS Name . . . ‘USER.Z25D.PROCLIB’
  • Old DS Name . . . ‘ADCD.Z25D.PROCLIB’
  • Compare Type 2
  • Listing Type 2

There are several sections to the output

  • Changes between members found in both libraries
  • CHNG MEMBERS-COMPARED and which members were common, and how many lines different there were
  • NON-PAIRED NEW FILE MEMBERS (files only in USER.Z25D.PROCLIB) | NON-PAIRED OLD FILE MEMBERS (files only in ADCD.Z25D.PROCLIB)

For example

...
NEW: USER.Z25D.PROCLIB OLD: ADCD.Z25D.PROCLIB

CHNG MEMBERS-COMPARED NEW-PROC OLD-PROC MATCHED NEW-INS OLD-DEL

** CSF 2 5 0 2 5
** FTPD 16 14 12 4 2
** HZSPROC 42 42 41 1 1
** TCPIP 14 71 10 4 61
** VTAM00 7 6 6 1 0

5 TOTAL MEMBER(S) PROCESSED AS A PDS
5 TOTAL MEMBER(S) PROCESSED HAD CHANGES
0 TOTAL MEMBER(S) PROCESSED HAD NO CHANGES
11 TOTAL NEW FILE MEMBER(S) NOT PAIRED
281 TOTAL OLD FILE MEMBER(S) NOT PAIRED
NON-PAIRED NEW FILE MEMBERS | NON-PAIRED OLD FILE MEMBERS
AZF#IN00 | ASMAC
AZF#IN01 | ASMACG
BACKUP | ASMACL
... | ...

Once you understand the changes between the USER.Z25D.PROCLIB and ADCD.Z25D.PROCLIB, you can do a similar exercise between USER.Z25D.PROCLIB and ADCD.Z31A.PROCLIB

The changes I had made to USER.*.PROCLIB include

Specifying a PRM to ICSF in member CSF

//CSF  PROC PRM=CP                                                       
//CSF EXEC PGM=CSFINIT,PARM=&PRM,REGION=0M,TIME=1440,MEMLIMIT=NOLIMIT

This uses the CSFPRMCP in the Parmlib concatentation.

This had

CKDSN(COLIN.SCSFCKDS) 
PKDSN(COLIN.SCSFPKDS)
TKDSN(COLIN.SCSFTKDS)
DOMAIN(0)

COMPAT(NO)
SSM(NO)
CHECKAUTH(NO)
CTRACE(CTICSF00)
USERPARM(USERPARM)
REASONCODES(ICSF)

Health Checker HZSPROC

This had //HZSPROC PROC HZSPRM=‘(AD,US)’ instead of //HZSPROC PROC HZSPRM=’AD

Where USER.Z25D.PARMLIB(HZSPRMUS) has

ADDREPLACE POLICY STATEMENT(COLINS) 
UPDATE CHECK(IBMRACF,RACF_SYSPLEX_COMMUNICATION)
DATE(20240120)
INACTIVE
REASON('COLIN - Test/Development env')

ADDREPLACE POLICY
UPDATE CHECK(IBMRACF,RACF_PROTECTALL_FAIL)
DATE(20240120)
INACTIVE
REASON('COLIN2- do not want in one person system')

ADDREPLACE POLICY
UPDATE CHECK(IBMXCF,XCF_TCLASS_CLASSLEN)
DATE(20240120)
INACTIVE
REASON('COLIN - NON sysplex no xcf message buffers ')

to prevent unnecessary health check messages from being produced.

TCPIP

  • Remove the TSO step with RACFCRT CRTHOST_.
  • Remove the comments
  • Change the PROFILE
  • Change the SYSTCPD statement.

FTPD

VTAM00

This procedure issues commands as part of the z/OS start up. It executes commands in parmlib member VTAM00

Add DSN=USER.&SYSVER..PARMLIB(&M),DISP=SHR to the parmlib definition

My USER.Z31A.PARMLIB(VTAM00) has

* Make the operator console nice
K A,NONE,L=L700
* FOR HEALTH CHECK MESSAGE
$T CKPTDEF,OPVERIFY=NO

One thought on “Migrating an ADCD z/OS release to the next release: Proclib members

Leave a comment