XA switch structure, dynamic registration" /> The XA switch structures
Home

 

The XA switch structures

Two XA switch structures are supplied with the extended transactional client on each platform:

MQRMIXASwitch

This switch structure is used by a transaction manager when a queue manager, acting as a resource manager, is not using dynamic registration.

MQRMIXASwitchDynamic

This switch structure is used by a transaction manager when a queue manager, acting as a resource manager, uses dynamic registration.

These switch structures are located in the libraries shown in Table 14.

Table 14. WebSphere MQ libraries containing the XA switch structures
Platform Library containing the XA switch structures
AIX /usr/mqm/lib/libmqcxa
HP-UX
Linux
Solaris
/opt/mqm/lib/libmqcxa
Windows systems C:\\IBM\WebSphere MQ\bin\mqcxa.dll 1
Notes:

  1. This is the default location for the library, but you might have installed it in a different location.

The name of the WebSphere MQ resource manager in each switch structure is MQSeries_XA_RMI, but many queue managers can share the same switch structure.

 

Dynamic registration

If a queue manager does not use dynamic registration, a transaction manager involves the queue manager in every unit of work. The transaction manager does this by calling xa_start, xa_end, and xa_prepare, even if the queue manager has no resources that are updated within the unit of work.

If a queue manager uses dynamic registration, a transaction manager starts by assuming that the queue manager is not involved a unit or work, and does not call xa_start. The queue manager then becomes involved in the unit of work only if its resources are updated within syncpoint control. If this occurs, the extended transactional client calls ax_reg to register the queue manager's involvement.

Using dynamic registration is a form of optimization because it can reduce the number of xa_ function calls issued by the transaction manager.



 

Home