]> granicus.if.org Git - postgresql/commit
Fsync directory after creating or unlinking file.
authorTeodor Sigaev <teodor@sigaev.ru>
Mon, 27 Mar 2017 16:33:01 +0000 (19:33 +0300)
committerTeodor Sigaev <teodor@sigaev.ru>
Mon, 27 Mar 2017 16:33:01 +0000 (19:33 +0300)
commit1b02be21f271db6bd3cd43abb23fa596fcb6bac3
tree1052877089af6b9cf2c8cc4f91d365147de40575
parent1f171a1803c28d3ae24636c9ca3352ec82c39e5f
Fsync directory after creating or unlinking file.

If file was created/deleted just before powerloss it's possible that
file system will miss that. To prevent it, call fsync() where creating/
unlinkg file is critical.

Author: Michael Paquier
Reviewed-by: Ashutosh Bapat, Takayuki Tsunakawa, me
src/backend/access/transam/clog.c
src/backend/access/transam/commit_ts.c
src/backend/access/transam/twophase.c
src/backend/access/transam/xlog.c
src/backend/storage/file/fd.c
src/include/storage/fd.h