Distributed two-phase commit support
Distributed two-phase commit protocol uses TCP/IP to communicate transactions between various platforms (for example, Windows, AIX®, Solaris, Linux®).
A distributed TCP/IP transaction normally involves the following components:
- An application component
- An application server, such as WebSphere® Application Server
- A resource adapter, such as one of the IMS Universal Database resource adapters, or the IMS TM Resource Adapter.
- A resource manager
- A transaction manager, such as IMS TM
- An enterprise information system (EIS), such as IMS DB
In distributed two-phase commit protocol, a client that is deployed on an application server issues a transaction. The application server acts as an external transaction manager (external coordinator) to manage transactions across one or more resource managers. To access the resource manager of an enterprise information system, the external coordinator must use a resource adapter. The IMS Connect client accesses the resource manager (IMS) through IMS Connect using TCP/IP.
IMS supports the X/Open XA protocol through z/OS® Resource Recovery Services (RRS), which IMS uses to participate in two-phase-commit processing on z/OS. As a result, IMS Connect communicates with RRS and passes to RRS the transaction context from the IMS Connect client. In turn, RRS as the syncpoint coordinator coordinates the changes so that all or no updates are made to IMS. In RRS, the set of changes that are made or not made within the transaction scope is called a unit of recovery (UR).
IMS Connect plays dual roles in two-phase-commit processing. IMS Connect, acts as an extension to RRS (the syncpoint manager) and is considered the server distributed syncpoint resource manager (SDSRM). As the SDSRM, IMS Connect allows RRS to communicate with other syncpoint managers as needed to ensure coordination of the distributed resources the application accesses. IMS Connect also is the communication resource manager (CRM). As the CRM, IMS Connect controls access to distributed resources by allowing an application component to communicate with other application components and resource managers that may be on different systems. Also, as the CRM, IMS Connect assists in processing a syncpoint event and communicates the events to distributed syncpoint managers.
IMS distributed transaction processing can be broken down into two types of transactions: global transactions that use two-phase commit protocol and transactions that use the one-phase commit optimization. The one-phase commit optimization is used when only one resource manager is involved in the transaction.