Re: WARNING: pgstat waiting

From: Andy Colson <andy(at)squeakycode(dot)net>
To: Thom Brown <thom(at)linux(dot)com>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: WARNING: pgstat waiting
Date: 2011-09-10 16:49:27
Message-ID: 4E6B9517.1030600@squeakycode.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 09/10/2011 11:43 AM, Thom Brown wrote:
> On 10 September 2011 17:40, Andy Colson<andy(at)squeakycode(dot)net> wrote:
>> I'm playing with 9.2devel, and I can fill my logs with:
>>
>> WARNING: pgstat waiting for 5001623 usec (494 loops), file timestamp
>> 368986878169601 target timestamp 368986897680812 last errno 0
>> WARNING: pgstat waiting for 5011780 usec (495 loops), file timestamp
>> 368986878169601 target timestamp 368986897680812 last errno 0
>> WARNING: pgstat waiting for 5021947 usec (496 loops), file timestamp
>> 368986878169601 target timestamp 368986897680812 last errno 0
>> WARNING: pgstat waiting for 5032115 usec (497 loops), file timestamp
>> 368986878169601 target timestamp 368986897680812 last errno 0
>> WARNING: pgstat waiting for 5042254 usec (498 loops), file timestamp
>> 368986878169601 target timestamp 368986897680812 last errno 0
>> WARNING: pgstat waiting for 5052400 usec (499 loops), file timestamp
>> 368986878169601 target timestamp 368986897680812 last errno 0
>>
>> I see its from here:
>>
>> http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=79b2ee20c8a041a85dd230c4e787bef22edae57b
>>
>> So I was wondering if there is anything I can help with? Not sure if you
>> need a reproducible case, or something you'd like me to try?
>
> I've had exactly the same sort of messages, pages of them. But wasn't
> quite sure what I needed to recreate it.
>

Just hammer a table with updates. I used:

pgbench -i -s 75

then:
pgbench -f bank1.sql -s 75 -c 5 -T 9999

-- bank1.sql
\set nbranches :scale
\set naccounts 100000 * :scale
\setrandom a 1 :naccounts
\setrandom b 1 :naccounts
\setrandom c 1 :naccounts
begin;
update pgbench_accounts set abalance = abalance + 1 where aid = :a;
update pgbench_accounts set abalance = abalance + 1 where aid = :b;
update pgbench_accounts set abalance = abalance + 1 where aid = :c;
\sleep 30 ms
end;

This is on a desktop box, single sata drive, postgresql.conf:

checkpoint_segments = 12
shared_buffers = 100MB
work_mem = 5MB

-Andy

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Marti Raudsepp 2011-09-10 16:50:06 Re: EXPLAIN and nfiltered, take two
Previous Message Thom Brown 2011-09-10 16:43:20 Re: WARNING: pgstat waiting