Re: PANIC caused by open_sync on Linux - Mailing list pgsql-hackers

From Tom Lane
Subject Re: PANIC caused by open_sync on Linux
Date
Msg-id 9648.1193402089@sss.pgh.pa.us
Whole thread Raw
In response to Re: PANIC caused by open_sync on Linux  (Greg Smith <gsmith@gregsmith.com>)
Responses Re: PANIC caused by open_sync on Linux
Re: PANIC caused by open_sync on Linux
Re: PANIC caused by open_sync on Linux
List pgsql-hackers
Greg Smith <gsmith@gregsmith.com> writes:
> On Fri, 26 Oct 2007, ITAGAKI Takahiro wrote:
>> Mixed usage of buffered and direct i/o is legal, but enforces complexity 
>> to kernels. If we simplify it, things would be more relaxed. For 
>> example, dropping zero-filling and only use direct i/o. Is it possible?

> It's possible, but performance suffers considerably.  I played around with 
> this at one point when looking into doing all database writes as sync 
> writes.  Having to wait until the entire 16MB WAL segment made its way to 
> disk before more WAL could be written can cause a nasty pause in activity, 
> even with direct I/O sync writes.  Even the current buffered zero-filled 
> write of that size can be a bit of a drag on performance for the clients 
> that get caught behind it, making it any sort of sync write will be far 
> worse.

This ties into a loose end we didn't get to yet: being more aggressive
about creating future WAL segments.  ISTM there is no good reason for
clients ever to have to wait for WAL segment creation --- the bgwriter,
or possibly the walwriter, ought to handle that in the background.  But
we only check for the case once per checkpoint and we don't create a
segment unless there's very little space left.
        regards, tom lane


pgsql-hackers by date:

Previous
From: Magnus Hagander
Date:
Subject: Re: 8.2.3: Server crashes on Windows using Eclipse/Junit
Next
From: Sebastien FLAESCH
Date:
Subject: Re: PostgreSQL 8.3, libpq and WHERE CURRENT OF