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 must ensure that the settings for IBM MQ are identical on each z/OS system in the sysplex.
- You might need to perform this task when migrating from a previous version. For further details, see the Program Directory. The Program Directories for IBM MQ for z/OS can be downloaded from the IBM Publications Center (see IBM MQ Version 9.0 PDF documentation)..
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.
The early code comprises the following load modules:- CSQ3INI and CSQ3EPX in the library thqual.SCSQLINK
- CSQ3ECMX in the library thqual.SCSQSNL x, where x is your
language letter:
- thlqual.SCSQSNLE, for US English mixed case
- thlqual.SCSQSNLU, for US English uppercase
- thlqual.SCSQSNLK, for Japanese
- thlqual.SCSQSNLF, for French
- thlqual.SCSQSNLC, for Chinese
IBM MQ includes a user modification that moves the contents of the thqual.SCSQSNL i library into the thqual.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, which can be downloaded from the IBM Publications Center.
When we 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.
We can make it available immediately without an IPL for any new queue manager subsystem added later (as described in Define the IBM MQ subsystem to z/OS ) by adding it to the LPA as follows:- If you did not use CSQ8UERL, issue these z/OS
commands:
SETPROG LPA,ADD,MODNAME=(CSQ3INI,CSQ3EPX),DSNAME=thqual.SCSQLINK SETPROG LPA,ADD,MODNAME=(CSQ3ECMX),DSNAME=thqual.SCSQSNL x
- If you did use CSQ8UERL, we can load the early code into the LPA using the following z/OS command:
SETPROG LPA,ADD,MASK=*,DSNAME=thqual.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=thqual.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
All the IBM MQ supplied load modules in the following libraries are reentrant and can be placed in the LPA:- SCSQAUTH
- SCSQANL x, where x is your language letter
- SCSQMVR1
This is particularly recommended for SCSQAUTH so that we do not have to include it in several STEPLIBs. Only one language library, SCSQANL x 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 we use either of these facilities, you need to include SCEERUN in the link list.