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
之间。