Hello,

I've found a bug in PostgreSQL 9.3 beta 2 which is related to statistics collection which emits excesssive amount of error messages. Please find attached the patch to fix this. I confirmed this problem occurs in PostgreSQL 9.2, too. Could you backport this?


[Problem]
If the directory specified by stats_temp_directory becomes inaccessible to postgres, enormous amount of WARNING messages are output. For example, when I set wrong permission on the directory by mistake while the database server is running and then started psql, more than 600 messages were emitted in a few seconds like this:

WARNING: could not open statistics file "/work/maumau/stats_tmp/pgstat.stat": Permission denied LOG: could not open temporary statistics file "/work/maumau/stats_tmp/pgstat.tmp": Permission denied WARNING: could not open statistics file "/work/maumau/stats_tmp/pgstat.stat": Permission denied WARNING: could not open statistics file "/work/maumau/stats_tmp/pgstat.stat": Permission denied WARNING: could not open statistics file "/work/maumau/stats_tmp/pgstat.stat": Permission denied
...

Even when there's no client, these messages are output regularly. I guess this is because autovacuum runs.


[Cause]
In backend_read_statsfile(), the backend loops PGSTAT_POLL_LOOP_COUNT (=1000) times trying to open the statistics file. The backend emits a WARNING message if it fails to open the file in every iteration of the loop.


[How to fix]
Emit the message upon the first failed attempt. For some diagnostics purposes, emit the message with DEBUG2 level on the subsequent attempts. DEBUG2 is arbitrary.


Regards
MauMau

Attachment: reduce_statsfile_error.patch
Description: Binary data

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to