Re: Group Commit
От | Jeff Janes |
---|---|
Тема | Re: Group Commit |
Дата | |
Msg-id | CAMkU=1w5pLv5=P_pNhP3CHD6AeSGQO+R_2Sekq6EeWDttAhP-g@mail.gmail.com обсуждение исходный текст |
Ответ на | Group Commit (Simon Riggs <simon@2ndQuadrant.com>) |
Ответы |
Re: Group Commit
|
Список | 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 по дате отправления: