Langsung ke konten

Arsip

Checkpoint

1 artikel
Basis Data 15 Sep 2026 5 min read

PostgreSQL Full Page Writes Memperbaiki Torn Page

Sebuah data page PostgreSQL dapat lebih besar daripada unit write atomik yang disediakan storage. Jika host gagal ketika sebuah page sedang ditulis, sebagian page tersebut dapat mencapai durable storage sementara bagian lain masih berasal dari versi yang lebih lama. Recovery tidak dapat dengan aman menerapkan change record biasa ke page yang struktur internalnya mungkin sudah tidak konsisten. full_page_writes menangani mode kegagalan tersebut. Ketika setting ini diaktifkan, PostgreSQL mencatat image lengkap sebuah page ke write-ahead log (WAL) pada modifikasi pertama page tersebut setelah checkpoint. Selama crash recovery, image itu dapat menggantikan on-disk page yang torn sebelum WAL record berikutnya di-replay.