名字 返回类型 描述
txid_current() bigint 获取当前事务 ID
txid_current_snapshot() txid_snapshot 获取当前快照
txid_snapshot_xip(txid_snapshot) setof bigint 获取在快照中进行中的事务ID
txid_snapshot_xmax(txid_snapshot) bigint 获取快照的 xmax
txid_snapshot_xmin(txid_snapshot) bigint 获取快照的xmin
txid_visible_in_snapshot(bigint, txid_snapshot) boolean 在快照中事务ID是否可见?(不使用子事务ID
内部事务 ID 类型(xid)是32位,每40亿事务循环。然而这些函数导出一个64位格式, 是使用一个"epoch"计数器扩展,所以在安装过程中不会循环。 这些函数使用的数据类型txid_snapshot,存储在某时刻事物ID可见性的信息。
参考:
(1)PostgreSQL 9.2 can share snapshot between multi transactions
(2)https://www.postgresql.org/docs/9.2/static/functions-admin.html#FUNCTIONS-SNAPSHOT-SYNCHRONIZATION (postgresl系统表函数介绍)