Глава 63. Предварительная запись в журнал для расширений

Для некоторых расширений, особенно реализующих пользовательские методы доступа, может потребоваться предварительная запись в журнал для обеспечения безопасности данных при сбое. В PostgreSQL можно достичь этой цели двумя способами.

Первый способ: расширения могут использовать унифицированный тип записей WAL, в котором изменения страниц описываются в общем виде. Этот способ прост в реализации и не требует загрузки библиотеки расширений для применения записей. Однако записи WAL такого типа будут игнорироваться при выполнении логического декодирования.

Второй способ: расширения могут использовать пользовательский менеджер ресурсов. Этот способ более гибкий, поддерживает логическое декодирование и иногда генерирует записи WAL гораздо меньшего размера, чем при использовании унифицированных записей WAL. Однако его сложнее реализовать для расширений.