Обсуждение: pgsql: Reduce checkpoints and WAL traffic on low activity database serv

Поиск
Список
Период
Сортировка

pgsql: Reduce checkpoints and WAL traffic on low activity database serv

От
Simon Riggs
Дата:
Reduce checkpoints and WAL traffic on low activity database server
Previously, we skipped a checkpoint if no WAL had been written since
last checkpoint, though this does not appear in user documentation.
As of now, we skip a checkpoint until we have written at least one
enough WAL to switch the next WAL file. This greatly reduces the
level of activity and number of WAL messages generated by a very
low activity server. This is safe because the purpose of a checkpoint
is to act as a starting place for a recovery, in case of crash.
This patch maintains minimal WAL volume for replay in case of crash,
thus maintaining very low crash recovery time.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/18fb9d8d21a28caddb72c7ffbdd7b96d52ff9724

Modified Files
--------------
src/backend/access/transam/xlog.c |   28 +++++++++++++++-------------
1 files changed, 15 insertions(+), 13 deletions(-)


Re: pgsql: Reduce checkpoints and WAL traffic on low activity database serv

От
Robert Haas
Дата:
On Wed, Nov 2, 2011 at 11:39 AM, Simon Riggs <simon@2ndquadrant.com> wrote:
> Reduce checkpoints and WAL traffic on low activity database server
> Previously, we skipped a checkpoint if no WAL had been written since
> last checkpoint, though this does not appear in user documentation.
> As of now, we skip a checkpoint until we have written at least one
> enough WAL to switch the next WAL file. This greatly reduces the
> level of activity and number of WAL messages generated by a very
> low activity server. This is safe because the purpose of a checkpoint
> is to act as a starting place for a recovery, in case of crash.
> This patch maintains minimal WAL volume for replay in case of crash,
> thus maintaining very low crash recovery time.

I think you need to update the docs, for checkpoint_timeout if nothing else.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

Re: pgsql: Reduce checkpoints and WAL traffic on low activity database serv

От
Simon Riggs
Дата:
On Wed, Nov 2, 2011 at 4:15 PM, Robert Haas <robertmhaas@gmail.com> wrote:
> On Wed, Nov 2, 2011 at 11:39 AM, Simon Riggs <simon@2ndquadrant.com> wrote:
>> Reduce checkpoints and WAL traffic on low activity database server
>> Previously, we skipped a checkpoint if no WAL had been written since
>> last checkpoint, though this does not appear in user documentation.
>> As of now, we skip a checkpoint until we have written at least one
>> enough WAL to switch the next WAL file. This greatly reduces the
>> level of activity and number of WAL messages generated by a very
>> low activity server. This is safe because the purpose of a checkpoint
>> is to act as a starting place for a recovery, in case of crash.
>> This patch maintains minimal WAL volume for replay in case of crash,
>> thus maintaining very low crash recovery time.
>
> I think you need to update the docs, for checkpoint_timeout if nothing else.

Checkpoints have always been skipped, if no activity. So the docs
don't need changing.

--
 Simon Riggs                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services