Redrock Postgres 搜索 英文
版本: 17 / 18

第 64 章. 扩展的预写日志

目录

64.1. 通用 WAL 记录
64.2. 自定义 WAL 资源管理器

某些扩展,尤其是实现自定义访问方法的扩展,可能需要执行预写日志(WAL)以确保崩溃安全性。PostgreSQL 为扩展提供了两种实现此目标的方式。

首先,扩展可以选择使用通用 WAL。这是一种特殊的 WAL 记录类型,以通用方式描述页面(page)的更改。这种方法实现起来很简单,并且在应用记录时不需要加载扩展库。然而,在执行逻辑解码时,通用 WAL 记录会被忽略。

其次,扩展可以选择使用自定义资源管理器。这种方法更灵活,支持逻辑解码,并且有时可以生成比通用 WAL 更小的预写日志记录。然而,它对扩展的实现来说更为复杂。