Re: initdb and fsync - Mailing list pgsql-hackers

From Andres Freund
Subject Re: initdb and fsync
Date
Msg-id 201203141026.17799.andres@anarazel.de
Whole thread Raw
In response to Re: initdb and fsync  (Jeff Davis <pgsql@j-davis.com>)
Responses Re: initdb and fsync  (Jeff Davis <pgsql@j-davis.com>)
List pgsql-hackers
On Wednesday, March 14, 2012 05:23:03 AM Jeff Davis wrote:
> On Tue, 2012-03-13 at 09:42 +0100, Andres Freund wrote:
> > for recursively everything in dir:
> >    posix_fadvise(fd, POSIX_FADV_DONTNEED);
> > 
> > for recursively everything in dir:
> >    fsync(fd);
> 
> Wow, that made a huge difference!
> 
>   no sync:      ~ 1.0s
>   sync:         ~10.0s
>   fadvise+sync: ~ 1.3s
> 
> Patch attached.
> 
> Now I feel much better about it. Most people will either have fadvise, a
> write cache (rightly or wrongly), or actually need the sync. Those that
> have none of those can use -N.
Well, while the positive effect of this are rather large it also has the bad 
effect of pushing the whole new database out of the cache. Which is not so nice 
if you want to run tests on it seconds later.
How are the results with sync_file_range(fd, 0, 0, 
SYNC_FILE_RANGE_WRITE)? 

Andres


pgsql-hackers by date:

Previous
From: Simon Riggs
Date:
Subject: Re: Too many IO?
Next
From: Vlad Arkhipov
Date:
Subject: Weird behaviour