Re: Re: Faster CREATE DATABASE by delaying fsync (was 8.4.1 ubuntu karmic slow createdb)

Andres Freund <andres@anarazel.de>

From: Andres Freund <andres@anarazel.de>
To: david@lang.hm
Cc: Greg Stark <gsstark@mit.edu>, pgsql-performance@postgresql.org, pgsql-hackers@postgresql.org, Michael Clemmons <glassresistor@gmail.com>, Hannu Krosing <hannu@2ndquadrant.com>, Scott Marlowe <scott.marlowe@gmail.com>
Date: 2009-12-29T00:43:15Z
Lists: pgsql-hackers, pgsql-performance
On Tuesday 29 December 2009 01:30:17 david@lang.hm wrote:
> On Tue, 29 Dec 2009, Greg Stark wrote:
> > On Mon, Dec 28, 2009 at 10:54 PM, Andres Freund <andres@anarazel.de> 
wrote:
> >> fsync everything in that pass.
> >> Including the directory - which was not done before and actually might
> >> be necessary in some cases.
> >
> > Er. Yes. At least on ext4 this is pretty important. I wish it weren't,
> > but it doesn't look like we're going to convince the ext4 developers
> > they're crazy any day soon and it would really suck for a database
> > created from a template to have files in it go missin.
> 
> actually, as I understand it you need to do this on all filesystems except
> ext3, and on ext3 fsync is horribly slow because it writes out
> _everything_ that's pending, not just stuff related to the file you do the
> fsync on.
I dont think its all filesystems (ext2 should not be affected...), but generally 
youre right. At least jfs, xfs are affected as well.

Its btw not necessarily nearly-safe and slow on ext3 as well (data=writeback).

Andres