+

Search Tips | Advanced Search

Updating the subsystem name table

When defining the IBM MQ subsystem we must add an entry to the subsystem name table.

The subsystem name table of z/OS, which is taken initially from the SYS1.PARMLIB member IEFSSNss, contains the definitions of formally defined z/OS subsystems. To define each IBM MQ subsystem, we must add an entry to this table, either by changing the IEFSSNss member of SYS1.PARMLIB, or, preferably, by using the z/OS command SETSSI.

IBM MQ subsystem initialization supports parallel processing, so IBM MQ subsystem definition statements can be added both above and below the BEGINPARALLEL keyword in the IEFSSNss table available at z/OS V1.12 and later.

If we use the SETSSI command, the change takes effect immediately, and there is no need to perform an IPL of our system. Ensure you update SYS1.PARMLIB as well, as described in Update SYS1.PARMLIB members so that the changes remain in effect after subsequent IPLs.

The SETSSI command to dynamically define an IBM MQ subsystem is:
SETSSI ADD,S=ssid,I=CSQ3INI,P='CSQ3EPX,cpf,scope'
The corresponding information in IEFSSNss can be specified in one of two ways:

  • The keyword parameter form of the IBM MQ subsystem definition in IEFSSNss. This is the recommended method.
    SUBSYS SUBNAME(ssid) INITRTN(CSQ3INI) INITPARM('CSQ3EPX,cpf,scope')
    
  • The positional parameter form of the IBM MQ subsystem definition.
    ssid,CSQ3INI,'CSQ3EPX,cpf,scope'
    

Do not mix the two forms in one IEFSSNss member. If different forms are required, use a separate IEFSSNss member for each type, adding the SSN operand of the new member to the IEASYSpp SYS1.PARMLIB member. To specify more than one SSN, use SSN=(aa,bb,...) in IEASYSpp. In the examples,

    ssid
    The subsystem identifier. It can be up to four characters long. All characters must be alphanumeric (uppercase A through Z, 0 through 9), it must start with an alphabetic character. The queue manager will have the same name as the subsystem, therefore we can use only characters that are allowed for both z/OS subsystem names and IBM MQ object names.

    cpf
    The command prefix string (see Defining command prefix strings (CPFs) for information about CPFs).

    scope
    The system scope, used if we are running in a z/OS sysplex (see CPFs in a sysplex environment for information about system scope).

Figure 1 shows several examples of IEFSSNss statements.

Figure 1. Sample IEFSSNss statements for defining subsystems
CSQ1,CSQ3INI,'CSQ3EPX,+mqs1cpf,S'
CSQ2,CSQ3INI,'CSQ3EPX,+mqs2cpf,S'
CSQ3,CSQ3INI,'CSQ3EPX,++,S'
Note: When you have created objects in a subsystem, we cannot change the subsystem name or use the page sets from one subsystem in another subsystem. To do either of these, we must unload all the objects and messages from one subsystem and reload them into another.

Table 1 gives a number of examples showing the associations of subsystem names and command prefix strings (CPFs), as defined by the statements in Figure 1.

IBM MQ subsystem name CPF
CSQ1 +mqs1cpf
CSQ2 +mqs2cpf
CSQ3 ++
Note: The ACTIVATE and DEACTIVATE functions of the z/OS command SETSSI are not supported by IBM MQ.

To check the status of the changes, issue the following command in SDSF: /D SSI,L. You will see the new subsystems created with ACTIVE status.

Parent topic: Define the IBM MQ subsystem to z/OS

Last updated: 2020-10-04