Global transactions in multiple threads

When global transactions are run concurrently in multiple threads, additional steps are required to configure the environment.

A new setting, ShareConnectionThreads, has been added to the dtx.ini file to enable data operations on different resources to be executed in the same thread. If you want to enable multi-threaded global transactions, you must configure this setting as follows:


ShareConnectionThreads=1

The value of 1 indicates that the connections from the cards with the -GTX adapter command belong to the same thread.

When the IBM® WebSphere® MQ, Oracle, and Oracle AQ adapters are participating in global transactions managed by the MQS TM, the XAResourceManager stanza for Oracle must be properly configured. For UNIX systems, this stanza is located in the qm.ini file of the queue manager that is being used as a transaction manager; for Windows systems, it is located in the Windows Registry. On UNIX systems, the qm.ini file must be manually edited. In Windows, you can use the graphical user interface (GUI) to configure this stanza.

The ThreadOfControl setting of this stanza must be set to THREAD, as indicated below:


ThreadOfControl=THREAD

Additionally, in the Oracle XA open string, the following setting must be added:


Threads=True

For more information about the settings in the dtx.ini file, refer to the Launcher documentation.