Skip site navigation (1) Skip section navigation (2)

Re: bgwriter, checkpoints, curious (seeing delays)

From: Devrim GÜNDÜZ <devrim(at)gunduz(dot)org>
To: Tory M Blue <tmblue(at)gmail(dot)com>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: bgwriter, checkpoints, curious (seeing delays)
Date: 2010-02-26 06:42:21
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-performance
On Thu, 2010-02-25 at 22:12 -0800, Tory M Blue wrote:
> shared_buffers = 1500MB 

Some people tend to increase this to 2.2GB(32-bit) or 4-6 GB (64 bit),
if needed. Please note that more shared_buffers will lead to more
pressure on bgwriter, but it also has lots of benefits, too.

> work_mem = 100MB

This is too much. Since you have 300 connections, you will probably swap
because of this setting, since each connection may use this much
work_mem. The rule of the thumb is to set this to a lower general value
(say, 1-2 MB), and set it per-query when needed.

> checkpoint_segments = 100
> checkpoint_warning = 3600s

What about checkpoint_timeout? Please note that even if
checkpoint_segments = 100, if timeout value is low (say 5 mins),
PostgreSQL will probably checkpoint every checkpoint_timeout minutes
(unless PostgreSQL creates $checkpoint_segments xlogs before
checkpoint_timeout value). Depending on your workload, this may not be
intended, and it may cause spikes -- which will lead to the issues you

I'll stop here, and suggest you read this:

for details about this subject. As noted there, if you are running 8.3+,
pg_stat_bgwriter will help you to tune checkpoint & bgwriter settings.

PostgreSQL Danışmanı/Consultant, Red Hat Certified Engineer,,  Twitter:

In response to


pgsql-performance by date

Next:From: Tory M BlueDate: 2010-02-26 07:01:36
Subject: Re: bgwriter, checkpoints, curious (seeing delays)
Previous:From: Jochen ErwiedDate: 2010-02-26 06:29:22
Subject: Re: bgwriter, checkpoints, curious (seeing delays)

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group