On Wed, 2006-01-11 at 18:24 -0500, Qingqing Zhou wrote: > I understand checkpoint code doing something like this: > > Get RedoRecPtr; > Flush all dirty buffers no matter what's its LSN; > Write down checkpoint xlog record; > > So I wonder is it possible flush only dirty buffers with LSN < RedoRecPtr > to improve checkpoint caused delay? Because even we flush every dirty > buffers, we still have to replay from the RedoRecPtr. Of course, this only > applies to non-critical checkpoints (critical ones like startup and > shutdown).
Probably good idea to read Gray & Reuter or Vekum & Vossen books on transactional systems theory before any such discussion. Incidentally, it was suggested to me that we write odd/even numbered blocks on alternate checkpoints as a way of reducing checkpoint impact. Apparently this has been implemented on another RDBMS in a galaxy far, far away. But I have enough to do right now. Best Regards, Simon Riggs ---------------------------(end of broadcast)--------------------------- TIP 4: Have you searched our list archives? http://archives.postgresql.org