Postgres中的age(datfrozenxid)如何计算?

时间:2019-02-20 00:08:43

标签: postgresql database-administration

如何在postgres中计算age(datfrozenxid)?

postgres文档说:“年龄列衡量从截止XID到当前交易XID的交易数量。”

1 个答案:

答案 0 :(得分:1)

XID只是序列号,因此计算XID的“年龄”是简单的减法,即:

age(datfrozenxid) = txid_current() - datfrozenxid

initdb期间创建的数据以及在Postgres 9.4之前冻结的数据的XID将始终报告2147483647的年龄。

可以here找到age()函数的完整源代码(其中的所有五行)。