From: | Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com> |
---|---|
To: | Michael Paquier <michael(dot)paquier(at)gmail(dot)com> |
Cc: | PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Better way of dealing with pgstat wait timeout during buildfarm runs? |
Date: | 2015-01-21 00:25:52 |
Message-ID: | 54BEF210.7070101@2ndquadrant.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 21.1.2015 00:38, Michael Paquier wrote:
> On Wed, Jan 21, 2015 at 1:08 AM, Tomas Vondra
>
>> I've tried to reproduce this on my Raspberry PI 'machine' and it's not
>> very difficult to trigger this. About 7 out of 10 'make check' runs fail
>> because of 'pgstat wait timeout'.
>>
>> All the occurences I've seen were right after some sort of VACUUM
>> (sometimes plain, sometimes ANALYZE or FREEZE), and the I/O at the time
>> looked something like this:
>>
>> Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s
>> avgrq-sz avgqu-sz await r_await w_await svctm %util
>> mmcblk0 0.00 75.00 0.00 8.00 0.00 36.00
>> 9.00 5.73 15633.75 0.00 15633.75 125.00 100.00
>>
>> So pretty terrible (this is a Class 4 SD card, supposedly able to
>> handle 4 MB/s). If hamster had faulty SD card, it might have been
>> much worse, I guess.
>
> By experience, a class 10 is at least necessary, with a minimum
> amount of memory to minimize the apparition of those warnings,
> hamster having now a 8GB class 10 card.
Well, my goal was exactly to produce those warnings ;-) and see if I can
identify some strange cases. That's why I chose just class 4. But even
then it produces rather low number of those warnings (one or two per
check run), and mostly at the expected places with significant I/O
overload. So I'm not any wiser :-(
regards
Tomas
From | Date | Subject | |
---|---|---|---|
Next Message | Arne Scheffer | 2015-01-21 00:32:49 | Re: Add min and max execute statement time in pg_stat_statement |
Previous Message | Peter Geoghegan | 2015-01-21 00:07:53 | Re: B-Tree support function number 3 (strxfrm() optimization) |