diff --git a/src/backend/access/transam/slru.c b/src/backend/access/transam/slru.c index 1f656844917..68b4fb71724 100644 --- a/src/backend/access/transam/slru.c +++ b/src/backend/access/transam/slru.c @@ -1150,6 +1150,10 @@ SimpleLruFlush(SlruCtl ctl, bool allow_redirtied) } if (!ok) SlruReportIOError(ctl, pageno, InvalidTransactionId); + + /* Ensure that directory entries for new files are on disk. */ + if (ctl->do_fsync) + fsync_fname(ctl->Dir, true); } /*