高健 wrote:
> I have one question about checkponint . That is : can checkpoint be parallel?
>
> It is said that checkpoint will be activated according to either conditions:
>
> 1)After last checkpoint, checkpoint_timeout seconds passed.
>
> 2)When shared_buffers memory above checkpoint_segments size is filled with data.
>
> My experience is that :
>
> There is only one checkpoint process there and works, and even when there are many data created during
> transactions,
>
> There will also be only one checkpoint process deal with it
>
> (maybe background writer or some other server process will deal it)?
It would not make sense to have more than one checkpoint going on
at the same time; it is a point at which recovery can begin.
> And also, I think when the above 1) or 2) activated checkpoint ,
>
> after the checkpoint data creation, then the 1) and 2) value will be to zero and calculated again.
>
> So I think that checkpoint will not be created parallel.
>
> Is my understanding right?
Yes.
> And if there are some official documentation from www.postgresql.org or somewhere else, I'll be very
> appreciative.
http://www.postgresql.org/docs/9.3/static/wal-configuration.html
"A checkpoint is begun every checkpoint_segments log segments,
or every checkpoint_timeout seconds, whichever comes first."
Yours,
Laurenz Albe