Group Commit

From: Simon Riggs <simon(at)2ndQuadrant(dot)com>
To: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Group Commit
Date: 2011-11-14 10:08:01
Message-ID: CA+U5nM+yHxCmatc_M7bFHGe27GEgFkxmDdLX1s4mSuuCGdSwxQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

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.

--
 Simon Riggs                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

Attachment Content-Type Size
group_commit.v2.patch application/octet-stream 37.8 KB

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Thom Brown 2011-11-14 10:56:44 Re: (PATCH) Adding CORRESPONDING to Set Operations
Previous Message Thom Brown 2011-11-14 09:55:33 Re: Detach/attach database