General XA support

General XA is not supported on OS/400 or Compaq NonStop Kernel.

An XA switch load module is provided to enable you to link CICS with WebSphere MQ on UNIX systems. Additionally, sample source code files are provided to enable you to develop the XA switches for other transaction messages. The names of the switch load modules provided are:

Table 9. Essential code for CICS applications -- XA initialization routine

C (source)
C (exec) - add one of the following to your
XAD.Stanza
amqzscix.c
amqzsc - CICS for AIX Version 2.1,
amqzsc - TXSeries for AIX, Version 4.2,
amqzsc - TXSeries for HP-UX, Version 4.2,
amqzsc - CICS for Siemens Nixdorf SINIX Version 2.2,
amqzsc - TXSeries for Sun Solaris, Version 4.2
amqzscin.c
mqmc4swi - TXSeries for Windows NT, Version 4.2

WebSphere MQ XA support and Tuxedo

It is possible for WebSphere MQ on Windows and UNIX systems to block Tuxedo-coordinated XA applications indefinitely in xa_start. This can occur only when two or more processes coordinated by Tuxedo in a single global transaction attempt to access WebSphere MQ using the same transaction branch ID, or XID. If Tuxedo gives each process in the global transaction a different XID to use with WebSphere MQ, this cannot occur.

To avoid the problem, configure each application in Tuxedo that will access WebSphere MQ under a single global transaction ID (gtrid), within its own Tuxedo server group. Processes in the same server group use the same XID when accessing resource managers on behalf of a single gtrid, and are therefore vulnerable to blocking in xa_start in WebSphere MQ. Processes in different server groups use separate XIDs when accessing resource managers and so will not have to worry about serializing their transaction work in WebSphere MQ.



© IBM Corporation 1993, 2002. All Rights Reserved