The Dynamic Server Transaction Manager, 3which is an integral part of Dynamic Server, not a separate module, recognizes 3XA-compliant, external data sources. These data sources can participate in 3two-phase commit transactions.
3The transaction manager invokes support routines for each XA-compliant, 3external data source that participates in a distributed transaction at a particular 3transactional event, such as prepare, commit, or rollback. This interaction 3conforms to X/Open XA interface standards.
3Transaction support for XA-compliant, 3external data sources, which are also called resource managers, enables you to:
3The MQ DataBlade Module is an example of a set of UDRs that provide this type 3of external data access.
The transaction coordination with an XA-compliant, external data source 3is supported only in Informix logged databases and ANSI-compliant databases, 3since these databases support transactions. Transaction coordination with 3an XA-compliant, external data source is not supported in non-logged databases.
3You can use the following DDL statements, which are extensions to SQL statements 3to manage XA data source types and data sources:
3 3Statement | 3Description | 3
---|---|
CREATE XADATASOURCE TYPE | 3Creates a type of XA-compliant, external data source | 3
CREATE XADATASOURCE | 3Creates an instance of an XA-compliant, external data source | 3
DROP XADATASOURCE | 3Deletes an instance of an XA-compliant, external data source | 3
DROP XADATASOURCE TYPE | 3Deletes a type of XA-compliant, external data source | 3
For more information on these statements, see the IBM Informix Guide to SQL: Syntax.
3The interaction between Dynamic Server and an XA-compliant, external data 3source occurs through a set of user-defined XA-support routines, such as xa_open, xa_end, xa_commit, and xa_prepare. You create these support 3routines before using the CREATE XADATASOURCE TYPE statement. For more information, 3see the IBM Informix DataBlade API Programmer's Guide.
3After you create an external XA-compliant data source, you can register 3the data source to a current transaction and you can unregister the data source 3using the mi_xa_register_xadatasource() or ax_reg() and mi_xa_unregister_xadatasource() or ax_unreg() functions. In a distributed environment, you 3must register a data source at the local, coordinator server. Registration 3is transient, lasting only for the duration of the transaction. For more information 3on using these functions, see the IBM Informix DataBlade API Function Reference and 3the IBM Informix DataBlade API Programmer's Guide.
3Use the following onstat options to display information 3about transactions involving XA-compliant data sources:
3 3onstat Option | 3What XA-Compliant Data Source Information
3 3This Command Displays |
3
---|---|
onstat -x | 3Displays information on XA participants in a transaction. | 3
onstat -G | 3Displays information on XA participants in a global transaction. | 3
onstat -g ses session id | 3Displays session information, including information about 3XA data sources participating in a transaction. | 3
The IBM Informix MQ DataBlade provides external data access mechanisms 3for XA data sources. For information on this DataBlade Module, see the IBM Informix Built-In DataBlade Modules User's Guide.
Home | [ Top of Page | Previous Page | Next Page | Contents | Index ]