Sample definitions supplied with IBM MQ for z/OS
Use this topic as a reference for the sample JCL, and code supplied with IBM MQ for z/OS .
The following sample definitions are supplied with IBM MQ in the thlqual.SCSQPROC library. We can use them to define the system objects and to customize your own objects. We can include some of them in the initialization input data sets (described in Initialization commands ).
Initialization input data set | Sample name |
---|---|
CSQINP1 |
CSQ4INP1 CSQ4INPR |
CSQINP2 |
CSQ4INSA CSQ4INYS 1 CSQ4INSX CSQ4INSG CSQ4INSR CSQ4INSS CSQ4INSJ CSQ4INSM CSQ4INYG CSQ4INYR CSQ4INYC CSQ4INYD CSQ4INSC |
CSQINPT |
CSQ4INST CSQ4INYT |
Other |
CSQ4DISP CSQ4INPX CSQ4IVPQ CSQ4IVPG CSQ4MSTR CSQ4MSRR CSQ4QMIN |
- The order of these sample definitions is important: an error occurs if INYS, INSX, and INSG are ordered incorrectly.
CSQINP1 samples
Use the sample CSQINP1 data set thlqual.SCSQPROC(CSQ4INP1) when we are using one page set for each class of message, or thlqual.SCSQPROC(CSQ4INPR) when using multiple page sets for the major classes of message. It contains definitions of buffer pools, page set to buffer pool associations, and an ALTER SECURITY command. Include the sample in the CSQINP1 concatenation of our queue manager started task procedure.
CSQINP2 samples
- CSQ4INSG system object sample
-
The sample CSQINP2 data set thlqual.SCSQPROC(CSQ4INSG) contains definitions for the following
system objects for general use:
- System default objects
- System command objects
- System administration objects
- Other objects for system use
We must define the objects in this sample, but we need to do it only once when the subsystem is first started. Including the definitions in the CSQINP2 data set is the best way to do this. They are maintained across queue manager shutdown and restart. We must not change the object names, but we can change their attributes if required.
When the following conditions are met, one message is put to the SYSTEM.DURABLE.SUBSCRIBER.QUEUE queue (even if publish subscribe is not active):- The IBM MQ installation is Version 7.0.0 or later
- The QMGR attribute PSMODE is set to DISABLED
- The sample object CSQ4INST statement DEFINE SUB('SYSTEM.DEFAULT.SUB') is present.
To avoid this, delete or comment out the DEFINE SUB('SYSTEM.DEFAULT.SUB') statement.
The JMS 2.0 delivery delay staging queue, SYSTEM.DDELAY.LOCAL.QUEUE only need be defined if JMS 2.0 delivery delay is used. By default, the queue definition is commented out, which we can uncomment if required.
- CSQ4INSA system object and authentication sample
-
The sample CSQINP2 data set thlqual.SCSQPROC(CSQ4INSA) contains the channel authentication system queue definition. This queue holds the channel authentication records. It also contains the default channel authentication rules.
We must define the objects in this sample if CHLAUTH is ENABLED on the queue manager and you want to run channels, or we want to SET or DISPLAY CHLAUTH record. You only need to define them once when the subsystem is first started. Including the definitions in the CSQINP2 data set is the best way to do this. They are maintained across a queue manager shutdown and restart, we must not change the queue name.
- CSQ4INSS system object sample
-
We can define additional system objects if we are using queue sharing groups.
Sample data set thlqual.SCSQPROC(CSQ4INSS) contains sample commands for use with CF structures and a set of definitions for the system objects required for shared channels and intra-group queuing.
We cannot use this sample as is; we must customize it before use. Then we can include this member in the CSQINP2 DD concatenation of the queue manager startup procedure, or we can use it as input to the COMMAND function of the CSQUTIL utility to issue the required commands.
When we are defining group or shared objects, we need to include them in the CSQINP2 DD concatenation for only one queue manager in the queue sharing group.
- CSQ4INSX system object sample
-
We must define additional system objects if we are using distributed queuing and clustering.
Sample data set thlqual.SCSQPROC(CSQ4INSX) contains the queue definitions required. We can include this member in the CSQINP2 DD concatenation of the queue manager startup procedure, or you can use it as input to the COMMAND function in CSQUTIL utility to issue the required DEFINE commands.
There are two types of object definitions:- SYSTEM.CHANNEL.xx, needed for any distributed queuing
- SYSTEM.CLUSTER.xx, needed for clustering
- CSQ4INSJ system JMS object sample
-
Defines queues used in the JMS publish/subscribe domain.
- CSQ4INSM system object sample
-
If we are using advanced message security we must define additional system objects. Sample data set thlqual.SCSQPROC(CSQ4INSM) contains the queue definitions required.
- CSQ4INSR object sample
-
Defines queues used by WebSphere Application Server and brokers.
- CSQ4INYD object sample
-
If we are using distributed queuing and set up your own queues, processes, and channels.
Sample data set thlqual.SCSQPROC(CSQ4INYD) contains sample definitions that we can use for customizing your distributed queuing objects. It comprises:- A set of definitions for the sending end
- A set of definitions for the receiving end
- A set of definitions for using clients
We cannot use this sample as is - we must customize it before use. Then we can include this member in the CSQINP2 DD concatenation of the queue manager startup procedure, or we can use it as input to the COMMAND function of the CSQUTIL utility to issue the required DEFINE commands. (This is preferable because it means that you don't have to redefine these objects each time you restart the queue manager).
- CSQ4INYC object sample
-
If we are using clustering, definitions equivalent to the channel definitions and remote queue definitions of distributed queuing are created automatically, when needed. However, some manual channel definitions are needed - a cluster-receiver channel for the cluster and a cluster-sender definition to at least one cluster repository queue manager.
The sample data set: thlqual.SCSQPROC(CSQ4INYC) contains the following sample definitions that we can use for customizing the clustering objects:- Definitions for the queue manager
- Definitions for the receiving channel
- Definitions for the sending channel
- Definitions for cluster queues
- Definitions for lists of clusters
We cannot use this sample as is - we must customize it before use. Then we can include this member in the CSQINP2 DD concatenation of the queue manager startup procedure, or we can use it as input to the COMMAND function of the CSQUTIL utility to issue the required DEFINE commands. This is preferable because it means that you don't have to redefine these objects each time that you restart IBM MQ.
- CSQ4INYG object sample
-
The sample data set: thlqual.SCSQPROC(CSQ4INYG) contains the following sample definitions that
we can use for customizing your own objects for general use:
- Dead-letter queue
- Default transmission queue
- CICS adapter objects
We cannot use this sample as is - we must customize it before use. Then we can include this member in the CSQINP2 DD concatenation of the queue manager startup procedure, or we can use it as input to the COMMAND function of the CSQUTIL utility to issue the required DEFINE commands. This is preferable because it means that you don't have to redefine these objects each time that you restart IBM MQ.
In addition to the sample definitions here, we can use the system object definitions as the basis for the own resource definitions. For example, we can make a working copy of SYSTEM.DEFAULT.LOCAL.QUEUE and name it MY.DEFAULT.LOCAL.QUEUE. We can then change any of the parameters in this copy as required. You could then issue a DEFINE command by whichever method you choose, provided you have the authority to create resources of that type.
- Default transmission queue
- Read the Default
transmission queue description before you decide whether we want to define a default
transmission queue.
- If you decide that you do want to define a default transmission queue, remember that we must also define a channel to serve it.
- If you decide that we do not want to define one, remember to remove the DEFXMITQ statement from the ALTER QMGR command in the sample.
- CICS adapter objects
- The sample defines an initiation queue named CICS01.INITQ. This queue is used by the IBM MQ -supplied CKTI transaction. We can change the name of this queue; however it must match the name specified in the CICS system initialization table (SIT) or SYSIN override in the INITPARM statement.
- CSQ4INYS/CSQ4INYR object samples
-
Storage class definitions for using:
- one page set for each class of message
- multiple page sets for major classes of message
CSQINPT samples
- CSQ4INST
-
The sample data set: thlqual.SCSQPROC(CSQ4INST) contains the
definition for the system default subscription.
The default system subscription, SYSTEM.DEFAULT.SUB, moved from CSQ4INSG to CSQ4INST in IBM WebSphere MQ Version 7.1.
We must define the object in this sample, but we need to do it only once when the publish/subscribe engine is first started. Including the definition in the CSQINPT data set is the best way to do this. It is maintained across queue manager shutdown and restart. We must not change the object name, but we can change their attributes if required.
- CSQ4INYT
- The sample data set: thlqual.SCSQPROC(CSQ4INYT) contains a set of commands that you might want to run when the publish/subscribe engine is started. This sample displays Topic and Subscription information.
Other
- CSQ4DISP display sample
-
The sample data set: thlqual.SCSQPROC(CSQ4DISP) contains a set of generic DISPLAY commands that display all the defined resources on your queue manager. This includes the definitions for all IBM MQ objects and definitions such as storage classes and trace. These commands can generate a large amount of output. We can use this sample in the CSQINP2 data set or as input to the COMMAND function of the CSQUTIL utility.
- CSQ4INPX sample
-
The sample data set: thlqual.SCSQPROC(CSQ4INPX) contains a set of commands that you might want to execute each time the channel initiator starts. We must customize this sample before use; we can then include it in the CSQINPX data set for the channel initiator.
- CSQ4IVPQ and CSQ4IVPG samples
-
The sample data sets: thlqual.SCSQPROC(CSQ4IVPQ) and thlqual.SCSQPROC(CSQ4IVPG) contain sets of DEFINE commands that are required to run the installation verification programs (IVPs).
We can include these samples in the CSQINP2 data set. When you have run the IVPs successfully, we do not need to run them again each time the queue manager is restarted. Therefore, we do not need to keep these samples in the CSQINP2 concatenation permanently.
- CSQ4MSTR and CSQ4MSRR samples
- These are sample started task procedures for the queue manager: thlqual.SCSQPROC(CSQ4MSTR) and thlqual.SCSQPROC(CSQ4MSRR).
- CSQ4QMIN sample
-
A sample QMINI data set, thlqual.SCSQPROC(CSQ4QMIN).
See QMINI data set for details of the QMINI data set and the TransportSecurity stanza.
Parent topic: Defining the system on z/OS