2025年9月25日: PostgreSQL 18 釋出!
支援的版本: 當前 (18) / 17 / 16
開發版本: devel

67.4. 兩階段事務 #

PostgreSQL 支援一種兩階段提交 (2PC) 協議,該協議允許多個分散式系統以事務方式協同工作。相關命令為 PREPARE TRANSACTIONCOMMIT PREPAREDROLLBACK PREPARED。兩階段事務旨在供外部事務管理系統使用。 PostgreSQL 遵循 X/Open XA 標準提出的特性和模型,但並未實現一些較少使用的方面。

當用戶執行 PREPARE TRANSACTION 時,唯一可能的後續命令是 COMMIT PREPAREDROLLBACK PREPARED。通常,準備好的狀態應持續非常短的時間,但外部可用性問題可能導致事務在此狀態下停留較長時間。短暫的兩階段事務僅儲存在共享記憶體和 WAL 中。跨越檢查點的事務會被記錄在 pg_twophase 目錄中。當前準備好的事務可以使用 pg_prepared_xacts 進行檢查。

提交更正

如果您在文件中發現任何不正確、與您對特定功能的體驗不符或需要進一步澄清的內容,請使用 此表單 報告文件問題。