Attributes for queues
There are five types of queue definition. Some queue attributes apply to all types of queue; other queue attributes apply only to certain types of queue.
Types of queue
The queue manager supports the following types of queue definition:
- Local queue
- We can store messages on a local queue.
- Cluster queue
-
We can store messages on a cluster queue on the queue manager where it is defined. A cluster queue is a queue that is hosted by a cluster queue manager and made available to other queue managers in the cluster. The value of the QType queue attribute is MQQT_CLUSTER.
A cluster queue definition is advertised to other queue managers in the cluster. The other queue managers in the cluster can put messages to a cluster queue without needing a corresponding remote-queue definition. A cluster queue can be advertised in more than one cluster by using a cluster namelist.
When a queue is advertised, any queue manager in the cluster can put messages to it. To put a message, the queue manager must find out, from the full repositories, where the queue is hosted. Then it adds some routing information to the message and puts the message on a cluster transmission queue.
A queue manager can store messages for other queue managers in a cluster on multiple transmission queues. We can configure a queue manager to store messages on multiple cluster transmission queues in two different ways. If you set the queue manager attribute DEFCLXQ to CHANNEL, a different cluster transmission queue is created automatically from SYSTEM.CLUSTER.TRANSMIT.MODEL.QUEUE for each cluster-sender channel. If you set the CLCHNAME transmission queue option to match one or more cluster-senders channel, the queue manager can store messages for the matching channels on that transmission queue.
A cluster queue can be a queue that is shared by members of a queue sharing group in IBM MQ for z/OS.
- Remote queue
- A remote queue is not a physical queue; it is the local definition of a queue that exists on a remote queue manager. The local definition of the remote queue contains information that tells the local queue manager how to route messages to the remote queue manager.
Applications connected to the local queue manager can place messages on queues of this type; the messages are placed on the local transmission queue used to route messages to the remote queue manager. Applications cannot remove messages from remote queues. The value of the QType queue attribute is MQQT_REMOTE.
We can also use a remote queue definition for:- Reply-queue aliasing
In this case the name of the definition is the name of a reply-to queue. For more information, see Reply-to queue aliases and clusters.
- Queue manager aliasing
In this case the name of the definition is an alias for a queue manager, and not the name of a queue. For more information, see Queue manager aliases and clusters.
- Reply-queue aliasing
- Alias queue
- This is not a physical queue; it is an alternative name for a local queue, a shared queue, a cluster queue, or a remote queue. The name of the queue to which the alias resolves is part of the definition of the alias queue.
Applications connected to the local queue manager can place messages on queues of this type; the messages are placed on the queue to which the alias resolves. Applications can remove messages from queues of this type if the alias resolves to a local queue, a shared queue, or a cluster queue that has a local instance. The value of the QType queue attribute is MQQT_ALIAS.
- Model queue
- This is not a physical queue; it is a set of queue attributes from which a local queue can be created.
Messages cannot be stored on queues of this type.
Queue limits
From Version 9.0.0, Fix Pack 9, the queue manager limits the maximum queue file size to 2 TB by default.
Queue attributes
Some queue attributes apply to all types of queue; other queue attributes apply only to certain types of queue. The types of queue to which an attribute applies are shown in Table 1 and subsequent tables. Table 1 summarizes the attributes that are specific to queues. The attributes are described in alphabetical order. Note: The names of the attributes shown in this section are descriptive names used with the MQINQ and MQSET calls; the names are the same as for the PCF commands. When MQSC commands are used to define, alter, or display attributes, alternative short names are used; see Script (MQSC) commands for details.Attribute | Description | Local | Model | Alias | Remote | Cluster |
---|---|---|---|---|---|---|
AlterationDate | Date when definition was last changed |
|
|
|
||
AlterationTime | Time when definition was last changed |
|
|
|
||
BackoutRequeueQName | Excessive backout requeue queue name |
|
|
|||
BackoutThreshold | Backout threshold |
|
|
|||
BaseQName | Queue name to which alias resolves |
|
||||
CFStrucName | Coupling-facility structure name |
|
|
|||
CLCHNAME | Cluster-sender channel names |
|
|
|||
ClusterName | Name of cluster to which queue belongs |
|
|
|
|
|
ClusterNamelist | Name of namelist object containing names of clusters to which queue belongs |
|
|
|
||
CLWLQueuePriority | Cluster workload queue priority |
|
|
|
|
|
CLWLQueueRank | Cluster workload queue rank |
|
|
|
|
|
CLWLUseQ | Use remote queue |
|
||||
CreationDate | Date that the queue was created |
|
||||
CreationTime | Time that the queue was created |
|
||||
CurrentQDepth | Current queue depth |
|
||||
DefaultPutResponse | Default put response |
|
|
|
|
|
DefBind | Default binding |
|
|
|
|
|
DefinitionType attribute | Queue definition type |
|
|
|||
DefInputOpenOption | Default input open option |
|
|
|||
DefPersistence | Default message persistence |
|
|
|
|
|
DefPriority | Default message priority |
|
|
|
|
|
DefReadAhead | Default read ahead |
|
|
|
||
DistLists | Distribution list support |
|
|
|||
HardenGetBackout | Whether to maintain an accurate backout count |
|
|
|||
IndexType | Index type |
|
|
|||
InhibitGet | Whether get operations for the queue are allowed |
|
|
|
||
InhibitPut | Whether put operations for the queue are allowed |
|
|
|
|
|
InitiationQName | Name of initiation queue |
|
|
|||
MaxMsgLength | Maximum message length in bytes |
|
|
|||
MaxQDepth | Maximum queue depth |
|
|
|||
MsgDeliverySequence attribute | Message delivery sequence |
|
|
|||
NonPersistentMessage Class | Reliability goal for non-persistent messages |
|
|
|||
OpenInputCount | Number of opens for input |
|
||||
OpenOutputCount | Number of opens for output |
|
||||
PropertyControl | Property control |
|
|
|
||
ProcessName | Process name |
|
|
|||
QDepthHighEvent attribute | Whether Queue Depth High events are generated |
|
|
|||
QDepthHighLimit | High limit for queue depth |
|
|
|||
QDepthLowEvent attribute | Whether Queue Depth Low events are generated |
|
|
|||
QDepthLowLimit attribute | Low limit for queue depth |
|
|
|||
QDepthMaxEvent | Whether Queue Full events are generated |
|
|
|||
QDesc | Queue description |
|
|
|
|
|
QName | Queue name |
|
|
|
|
|
QServiceInterval | Target for queue service interval |
|
|
|||
QServiceIntervalEvent attribute | Whether Service Interval High or Service Interval OK events are generated |
|
|
|||
QSGDisp attribute | Queue sharing group disposition |
|
|
|
||
QueueAccounting | Queue accounting data collection |
|
|
|
|
|
QueueMonitoring | Online monitoring data for queues |
|
|
|||
QueueStatistics | Queue statistics data collection |
|
|
|
|
|
QType | Queue type |
|
|
|
|
|
RemoteQMgrName | Name of remote queue manager |
|
||||
RemoteQName | Name of remote queue |
|
||||
RetentionInterval | Retention interval |
|
|
|||
Scope | Whether an entry for the queue also exists in a cell directory |
|
|
|
||
Shareability | Queue shareability |
|
|
|||
StorageClass | Storage class for queue |
|
|
|||
TriggerControl | Trigger control |
|
|
|||
TriggerData | Trigger data |
|
|
|||
TriggerDepth | Trigger depth |
|
|
|||
TriggerMsgPriority | Threshold message priority for triggers |
|
|
|||
TriggerType | Trigger type |
|
|
|||
Usage attribute | Queue usage |
|
|
|||
XmitQName | Transmission queue name |
|