pg_xact_status()
是一个系统函数,用于报告最近事务的提交状态。
pg_xact_status()
添加于 PostgreSQL 13。
用法
pg_xact_status (xid8
) →text
pg_xact_status()
返回以下值之一:
已提交
进行中
已中止
pg_xact_status()
替换了 txid_status()
。
变更历史
- PostgreSQL 13
- 添加 (提交 4c04be9b)
示例
pg_xact_status()
的基本用法示例
postgres=# BEGIN; BEGIN postgres=*# SELECT pg_current_xact_id(); pg_current_xact_id -------------------- 762 (1 row) postgres=*# SELECT pg_xact_status('762'); pg_xact_status ---------------- in progress (1 row)
postgres=*# COMMIT; COMMIT postgres=# SELECT pg_xact_status('762'); pg_xact_status ---------------- committed (1 row)
尝试检索尚未发生的事务的状态
postgres=# SELECT pg_xact_status('9999'); ERROR: transaction ID 9999 is in the future
参考文献
- PostgreSQL 文档: 事务 ID 和快照信息函数