Re: Group Commit - Mailing list pgsql-hackers

From Jeff Janes
Subject Re: Group Commit
Date
Msg-id CAMkU=1w5pLv5=P_pNhP3CHD6AeSGQO+R_2Sekq6EeWDttAhP-g@mail.gmail.com
Whole thread Raw
In response to Group Commit  (Simon Riggs <simon@2ndQuadrant.com>)
Responses Re: Group Commit
List pgsql-hackers
On Mon, Nov 14, 2011 at 2:08 AM, Simon Riggs <simon@2ndquadrant.com> wrote:
> Enclosed patch implements Group Commit and also powersave mode for WALWriter.
>
> XLogFlush() waits for WALWriter to run XLogBackgroundFlush(), which
> flushes WAL and then wakes waiters. Uses same concepts and similar
> code to sync rep.
>
> Purpose is to provide consistent WAL writes, even when WALInsertLock
> contended. Currently no "off" option, thinking is that the overhead of
> doing this is relatively low and so it can be "always on" - exactly as
> it is for sync rep.
>
> WALWriter now has variable wakeups, so wal_writer_delay is removed.
> Commit_delay and Commit_siblings are now superfluous and are also removed.
>
> Works, but needs discussion in some areas, docs and possibly tuning
> first, so this is more of a quicky than a slow, comfortable patch.

When I apply this to HEAD and run make check, it freezes at:
test tablespace               ...

The wal writer process is running at 100% CPU.  The only thing it is
doing that is visible though strace is checking that the postmaster is
alive.

I see the same behavior on two different Linux boxes, 32 bit and 64
bit.  I've tried to do some debugging, but haven't made much head-way.Does anyone else see this?

Cheers,

Jeff


pgsql-hackers by date:

Previous
From: Ants Aasma
Date:
Subject: Re: strict aliasing
Next
From: Peter Geoghegan
Date:
Subject: Re: ISN was: Core Extensions relocation