登录
8.20.pg_lsn
类型#
pg_lsn
数据类型可用于存储 LSN(日志序列号)数据,该数据是 WAL 中某个位置的指针。此类型是XLogRecPtr
的表示形式,也是PostgreSQL的内部系统类型。
在内部,LSN 是一个 64 位整数,表示预写日志流中的字节位置。它以两个十六进制数字打印,每个数字最多 8 位,并用斜杠分隔;例如,16/B374D848
。pg_lsn
类型支持标准比较运算符,如=
和>
。可以使用-
运算符减去两个 LSN;结果是分隔这些预写日志位置的字节数。还可以使用+(pg_lsn,numeric)
和-(pg_lsn,numeric)
运算符分别将字节数添加到 LSN 中并从中减去字节数。请注意,计算出的 LSN 应在pg_lsn
类型的范围内,即介于0/0
和FFFFFFFF/FFFFFFFF
之间。