This topic describes how distributed transactions of PolarDB-X 1.0 work.
Distributed transactions use two-phase commit (2PC) to ensure the atomicity and consistency of transactions.
A 2PC transaction is divided into the prepare and commit phases.
- In the prepare phase, data nodes prepare all the resources such as resource locking and logging that are required for transaction commitment.
- In the commit phase, each data node actually commits transactions.
When you commit a distributed transaction, the PolarDB-X 1.0 server, as a transaction manager, sends a commit request to each data node only after all data nodes (ApsaraDB RDS for MySQL instances) have their resources prepared.