Update the z/OS link list and LPA
Update the LPA libraries with the new version of early code libraries. Other code can go in the link list or the LPA.
- You need to perform this task once for each z/OS® system where you want to run IBM® MQ.
- If you are using queue sharing groups, you should refresh the early code in each queue manager
in the QSG to the IBM MQ 9.4.0 level before
migrating any of the queue managers to IBM MQ 9.4.0.
Install the latest early code on each LPAR, and then refresh the queue managers one at a time at some point before migration. You do not have to migrate all of the queue managers at the same time.
- You might need to perform this task when migrating from a previous version. For further details, see the Program Directory. For download links for the Program Directories, see IBM MQ for z/OS Program Directory PDF files.
Early code
Some IBM MQ load modules need to be added to MVS™ for IBM MQ to act as a subsystem. These modules are known as the Early code, and they can be executed even if a queue manager is not active. For example, when an operator command is issued on the console with an IBM MQ command prefix, this Early code will get control and check if it needs to start a queue manager, or to pass the request to a running queue manager. This code is loaded into the Link Pack Area (LPA). There is one set of Early modules, which are used for all queue managers, and these need to be at the highest level of IBM MQ. Early code from a higher version of IBM MQ will work with a queue manager with a lower version of IBM MQ, but not the opposite.
- CSQ3INI and CSQ3EPX in the library thlqual.SCSQLINK
- CSQ3ECMX in the library thlqual.SCSQSNLx,
where x is the language letter for your national language:
- C, for Chinese
- E, for US English mixed case
- F, for French
- K, for Japanese
- U, for US English uppercase
IBM MQ includes a user modification that moves the contents of the thlqual.SCSQSNLx library into the thlqual.SCSQLINK and informs SMP/E. This user modification is called CSQ8UERL and is described in the Program Directory for IBM MQ for z/OS , for either Long Term Support or Continuous Delivery. For download links for the Program Directories, see IBM MQ for z/OS Program Directory PDF files.
When you have updated the early code in the LPA libraries, it is available from the next z/OS IPL (with the CLPA option) to all queue manager subsystems added during IPL from definitions in IEFSSNss members in SYS1.PARMLIB.
- If you did not use CSQ8UERL, issue these z/OS
commands:
SETPROG LPA,ADD,MODNAME=(CSQ3INI,CSQ3EPX),DSNAME=thlqual.SCSQLINK SETPROG LPA,ADD,MODNAME=(CSQ3ECMX),DSNAME=thlqual.SCSQSNLx
- If you did use CSQ8UERL, you can load the early code into the LPA using the following z/OS command:
SETPROG LPA,ADD,MASK=*,DSNAME=thlqual.SCSQLINK
- If you are using Advanced Message Security you must
also issue the following z/OS command to include an
additional module in the LPA:
SETPROG LPA,ADD,MODNAME=(CSQ0DRTM),DSNAME=thlqual.SCSQLINK
- Add it to the LPA using z/OS SETPROG commands as described previously in this topic.
- Stop the queue manager, using the IBM MQ command STOP QMGR.
- Ensure that the qmgr.REFRESH.QMGR security profile is set up. See MQSC commands, profiles, and their access levels.
- Refresh the early code for the queue manager using the IBM MQ command REFRESH QMGR TYPE(EARLY).
- Restart the queue manager, using the IBM MQ command START QMGR.
Other code
- SCSQAUTH
- SCSQANLx, where x is the language letter for your national language
- SCSQMVR1
See Modifying the contents of LNKLST data sets for more information, and Using the dynamic LNKLST facility safely and properly.
This is particularly recommended for SCSQAUTH so that you do not have to include it in several STEPLIBs. Only one language library, SCSQANLx should be placed in the LPA or link list. The link list libraries are specified in an LNKLSTkk member of SYS1.PARMLIB.
The distributed queuing facility and CICS® bridge (but not the queue manager itself) need access to the Language Environment (LE) runtime library SCEERUN. If you use either of these facilities, you need to include SCEERUN in the link list.
Some modules are loaded at queue manager start up into ECSA. In ECSA constrained environments, you can place these modules into the LPA instead. See Placing IBM MQ global modules into the LPA.