9.19. pg_lsn 类型

pg_lsn数据类型可以被用来存储 LSN(日志序列号)数据,LSN 是一个指向WAL中的位置的指针。这个类型是XLogRecPtr的一种表达并且是 LightDB的一种内部系统类型。

在内部,一个 LSN 是一个 64 位整数,表示在预写式日志流中的一个字节位置。它被打印成 两个最高 8 位的十六进制数,中间用斜线分隔,例如16/B374D848pg_lsn类型支持标准的比较操作符,如=>。两个 LSN 可以用-操作符做减法, 结果将是分隔两个预写式日志位置的字节数。此外,还可以分别使用+(pg_lsn,numeric)-(pg_lsn,numeric) 运算符在LSN中添加和减去字节数。请注意,计算过的LSN应在pg_lsn 类型的范围内,即0/0FFFFFFFF/FFFFFFFF.之间。