On Sat, Aug 27, 2011 at 03:57:16PM +0200, Tomas Vondra wrote:
> On 27 Srpen 2011, 6:01, Noah Misch wrote:
> > On Fri, Aug 26, 2011 at 10:46:33AM +0200, Tomas Vondra wrote:
> >> 1. collect pg_stat_bgwriter stats
> >> 2. run pgbench for 10 minutes
> >> 3. collect pg_stat_bgwriter stats (to compute difference with (1))
> >> 4. kill the postmaster
> >>
> >> The problem is that when checkpoint stats are collected, there might be
> >> a
> >> checkpoint in progress and in that case the stats are incomplete. In
> >> some
> >> cases (especially with very small db blocks) this has significant impact
> >> because the checkpoints are less frequent.
> >
> > Could you remove this hazard by adding a step "2a. psql -c CHECKPOINT"?
>
> I already do that, but it really does not solve the issue. It just aligns
> the first expected 'timed' checkpoint, it does not solve the problem with
> in-progress checkpoints unless the runs behave exactly the same (and
> that's the boring case).
To clarify, run that command _after_ the 10-minute pgbench run. It
blocks until completion of both the in-progress checkpoint, if any,
and the requested checkpoint.
--
Noah Misch http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services