Oops, don't forget to rewind the directory before scanning it to fsync files in CREATE DATABASE

This commit is contained in:
Greg Stark 2010-02-22 00:11:05 +00:00
parent f90a4c5df5
commit b21121cd3d

View File

@ -11,7 +11,7 @@
* as a service.
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/port/copydir.c,v 1.28 2010/02/15 11:40:49 stark Exp $
* $PostgreSQL: pgsql/src/port/copydir.c,v 1.29 2010/02/22 00:11:05 stark Exp $
*
*-------------------------------------------------------------------------
*/
@ -90,10 +90,12 @@ copydir(char *fromdir, char *todir, bool recurse)
else if (S_ISREG(fst.st_mode))
copy_file(fromfile, tofile);
}
Free(xldir);
/*
* Be paranoid here and fsync all files to ensure we catch problems.
*/
AllocateDir(fromdir);
if (xldir == NULL)
ereport(ERROR,
(errcode_for_file_access(),