Home
Queue definition commands
The cluster attributes on the DEFINE QLOCAL, DEFINE QREMOTE, and DEFINE QALIAS commands, and the three equivalent ALTER commands, are:
- CLUSTER
- To specify the name of the cluster to which the queue belongs.
- CLUSNL
- To specify a namelist of cluster names.
- DEFBIND
- To specify the binding to be used when an application specifies MQOO_BIND_AS_Q_DEF on the OPEN call. The default for this attribute is DEFBIND(OPEN), which binds the queue handle to a specific instance of the cluster queue when the queue is opened. The alternative is to specify DEFBIND(NOTFIXED) so that the queue handle is not bound to any particular instance of the cluster queue. When you specify DEFBIND on a queue definition, the queue is defined with one of the attributes, MQBND_BIND_ON_OPEN or MQBND_BIND_NOT_FIXED.
We recommend that you set the DEFBIND attribute to the same value on all instances of the same cluster queue.
Use the CLWLRANK parameter to apply a ranking factor to a queue for workload management purposes (this parameter is not supported on model queues). The cluster workload algorithm selects a destination queue with the highest rank. By default rank for all queues is set to zero. When the final destination is a queue manager on a different cluster, we can set the rank of any intermediate gateway queue managers (at the intersection of neighboring clusters), so that the cluster workload algorithm correctly selects a destination queue manager nearer the final destination. The same logic applies to alias queues. The rank selection is made before the channel status is checked, and therefore even non-accessible queue managers are available for selection. This has the effect of allowing a message to be routed through a network, rather than having it select between two possible destinations (as the priority would). So, if a channel is not started to the place where the rank has indicated, the message is not routed to the next highest rank, but waits until a channel is available to that destination (the message is held on the transmit queue).
Use the CLWLPRTY parameter to apply a priority factor to a queue for workload management purposes. The cluster workload algorithm selects a destination queue with the highest priority. By default priority for all queues is set to zero. If there are two possible destination queues, we can use this attribute to make one destination failover to the other destination. The priority selection is made after the channel status is checked. All messages are sent to the queue with the highest priority unless the status of the channel to that destination is not as favorable as the status of channels to other destinations. This means that only the most accessible destinations are available for selection. This has the effect of prioritizing between multiple destinations that are all available.
Use the CLWLUSEQ parameter to specify the behavior of an MQPUT operation for a queue. This parameter specifies the behavior of an MQPUT operation when the target queue has a local instance and at least one remote cluster instance (except where the MQPUT originates from a cluster channel). This parameter is only valid for local queues. Possible values are: QMGR (the behavior is as specified by the CLWLUSEQ parameter of the queue manager definition), ANY (the queue manager treats the local queue as another instance of the cluster queue, for the purposes of workload distribution), LOCAL (the local queue is the only target of the MQPUT operation).
The attributes on the DEFINE QLOCAL, DEFINE QREMOTE, and DEFINE QALIAS commands also apply to the DISPLAY QUEUE command. To display information about cluster queues, specify a queue type of QCLUSTER or the keyword CLUSINFO on the DISPLAY QUEUE command, or use the command DISPLAY QCLUSTER.
The DISPLAY QUEUE or DISPLAY QCLUSTER command returns the name of the queue manager that hosts the queue (or the names of all queue managers if there is more than one instance of the queue). It also returns the system name for each queue manager that hosts the queue, the queue type represented, and the date and time at which the definition became available to the local queue manager. This information is returned using the CLUSQMGR, QMID, CLUSQT, CLUSDATE, and CLUSTIME attributes respectively.
The system name for the queue manager (QMID), is a unique, system-generated name for the queue manager.
We can define a cluster queue that is also a shared queue. For example on z/OS we can define:
DEFINE QLOCAL(MYQUEUE) CLUSTER(MYCLUSTER) QSGDISP(SHARED) CFSTRUCT(STRUCTURE)For full details of the parameters and syntax of the QUEUE definition commands, refer to the WebSphere MQ Script (MQSC) Command Reference book.
The equivalent PCFs are MQCMD_CHANGE_Q, MQCMD_COPY_Q, MQCMD_CREATE_Q, and MQCMD_INQUIRE_Q. For information about these PCFs, refer to the WebSphere MQ Programmable Command Formats and Administration Interface book.
Parent topic:
MQSC command attributes
qc11140_
Home