On Tue, Nov 12, 2013 at 7:09 PM, Jayadevan <maymala.jayade...@gmail.com>wrote:

> Kevin Grittner-5 wrote
> > The checkpointer process is responsible for creating safe points
> > from which a recovery can begin; the background writer tries to
> > keep some pages available for re-use so that processes running
> > queries don't need to wait for page writes  in order to have free
> > spots to use in shared buffers.
>
> Thank you. Do both of them write to the same files?


Yes, mostly. (The checkpointer also does some other housekeeping writes
beyond the ordinary data file ones)


> Is it that checkpoint
> writes only committed data whereas background writer may also write
> non-committed data if there is no space available in the buffers?
>

No.  The checkpointer writes all data that was dirty as of a certain time
(the start of the checkpoint) regardless of how often it was used since
dirtied, and the background writer writes data that hasn't been used
recently, regardless of when it was first dirtied.  Neither knows or cares
whether the data being written was committed, rolled back, or still in
progress.


Cheers,

Jeff

Reply via email to