MQOPEN option for cluster queue
The binding used for the queue handle is taken from the DefBind queue attribute, which can take the value MQBND_BIND_ON_OPEN
, MQBND_BIND_NOT_FIXED
, or MQBND_BIND_ON_GROUP
.
To route all messages put to a queue using MQPUT to the same queue manager by the same route, use the MQOO_BIND_ON_OPEN
option on the MQOPEN call.
To specify that a destination is to be selected at MQPUT time, that is, on a message-by-message basis, use the MQOO_BIND_NOT_FIXED
option on the MQOPEN call.
To specify that all messages in a message groups put to a queue using MQPUT are allocated to the same destination instance, use the MQOO_BIND_ON_GROUP
option on the MQOPEN call.
Either MQOO_BIND_ON_OPEN
or MQOO_BIND_ON_GROUP
must be specified when using message groups with clusters to ensure that all messages in the group are processed at the same destination.
If you do not specify any of these options the default, MQOO_BIND_AS_Q_DEF
, is used.
If you specify the name of a queue manager in the MQOD
, the queue at that queue manager is selected. If the queue manager name is blank, any instance can be selected. See MQOPEN and clusters for more information.
MQOO_BIND_NOT FIXED
and not MQOO_BIND_ON_OPEN
. The cluster queue definition is advertised throughout the cluster, the alias queue definition is local to the queue manager.
DEFINE QLOCAL(CLQ1) CLUSTER(MYCLUSTER) DEFBIND(OPEN) REPLACE
DEFINE QALIAS(ACLQ1) TARGET(CLQ1) DEFBIND(NOTFIXED) REPLACE