OSDN Git Service

When telling the bgwriter that we need a checkpoint because too much xlog
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 12 Oct 2007 19:39:59 +0000 (19:39 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 12 Oct 2007 19:39:59 +0000 (19:39 +0000)
commit5c8eb929e69bba417b8e0b20c5016ad8129a073f
tree9fa33fae5b04d805d9d798c567db6891a02c70e5
parent6daef2bca400600b8a3d34ad8cceafd6bdaf049f
When telling the bgwriter that we need a checkpoint because too much xlog
has been consumed, recheck against the latest value of RedoRecPtr before
really sending the signal.  This avoids useless checkpoint activity if
XLogWrite is executed when we have a very stale local copy of RedoRecPtr.
The potential for useless checkpoint is very much worse in 8.3 because of
the walwriter process (which never does XLogInsert), so while this behavior
was intentional, it needs to be changed.  Per report from Itagaki Takahiro.
src/backend/access/transam/xlog.c