fsync pg_logical/mappings in CheckPointLogicalRewriteHeap().

Andres Freund <andres@anarazel.de>

Commit: 2b7dbe4bd5872ae5c6780e1a4121c2a5a8401e7c
Author: Andres Freund <andres@anarazel.de>
Date: 2022-01-21T19:24:12Z
Releases: 14.2
fsync pg_logical/mappings in CheckPointLogicalRewriteHeap().

While individual logical rewrite files were synced to disk, the directory was
not. On some filesystems that could lead to loosing directory entries after a
crash.

Reported-By: Tom Lane <tgl@sss.pgh.pa.us>
Author: Nathan Bossart <bossartn@amazon.com>
Discussion: https://postgr.es/m/867F2E29-2782-4869-970E-B984C6D35A8F@amazon.com
Backpatch: 10-

Files

PathChange+/−
src/backend/access/heap/rewriteheap.c modified +3 −0

Discussion