>
> How many backends are there, requesting a fresh stats file? I thought
> you mentioned the system is rather idle?
>
0-1 backend
no active connections
no active autovacuums
>
> A regular backend won't request a fresh copy unless the current file is
> older than 640 ms. So that can't cause ~50MB of writes (it'd require 10
> writes per second). Maybe there are multiple backends sending such
> requests, but I don't see how that could cause a continuous write load
> (I'd understand a short spike at the beginning, and then getting
> synchronized).
>
It's definitely doing full file writes 6-12 times per second.
> Autovacuum launcher / workers might cause that, because it's using 10 ms
> threshold. But that'd require a lot of autovacuum processes running in
> parallel, I guess.
>
No active autovacuum processes visible.
Now just interesting calculation:
autovacuum_naptime = 1 second (customized value from production)
active databases - 9...
Suspiciously close to 1/10 second.
Testing: increase autovacuum_naptime to
10second - two writes per second.
100second - only two writes every 10 second.
So yes, pgstat_send_inquiry definitely issued by autovacuum launcher.
Now question why EVERY pgstat_send_inquiry request from autovacuum leads to
the 1-2 full pgstat.stat rewrite on idle server?
--
Maxim Boguk
Senior Postgresql DBA
http://www.postgresql-consulting.ru/ <http://www.postgresql-consulting.com/>