Every global transaction has a coordinator and one or more participants, defined as follows:
The two-phase commit protocol always assigns the role of coordinator to the current database server. The role of coordinator cannot change during a single transaction. In the sample transaction in Figure 84, the coordinator is italy. If you change the first line in this example to the following statement, the two-phase commit protocol assigns the role of coordinator to france:
CONNECT TO stores_demo@france
Use the onstat -x option to display the coordinator for a distributed transaction. For more information, see Monitoring a Global Transaction.
In Figure 83, the participants are france and australia. The coordinator database server, italy, also functions as a participant because it is also doing an update.
The two-phase commit protocol relies on two kinds of communication, messages and logical-log records:
For more details, refer to Two-Phase Commit and Logical-Log Records.