Tom Lane wrote:
Jacob Coby <jcoby@xxxxxxxxxxxxxxx> writes:
I've got a pg 8.1.1 server running autovacuum, and it started attempting
to vacuum template0.
2006-06-22 15:00:50 EDT LOG: autovacuum: processing database "template0"
2006-06-22 15:00:50 EDT ERROR: could not access status of transaction
3242180415
template0 should surely not contain any such transaction number. Either
there's something you're not telling us about the history of this
installation, or template0 contains corrupt data, or ???.
database has been running for ~6 months now. no history of crashing, no
history of issues. this problem started on the 10th of this month.
What does the pg_database row for template0 contain? If you clone
template0 (CREATE DATABASE foo WITH TEMPLATE template0), does a vacuum
in the new database succeed?
create database works. vacuum verbose does have 1 error, which is
probably very helpful:
INFO: vacuuming "pg_catalog.pg_statistic"
ERROR: could not access status of transaction 3242180415
DETAIL: could not open file "pg_clog/0C13": No such file or directory
I then tried:
foo=# select * from pg_catalog.pg_statistic ;
ERROR: could not access status of transaction 3242180415
DETAIL: could not open file "pg_clog/0C13": No such file or directory
so it seems that pg_catalog.pg_statistic has somehow become corrupt on
template0?
--
Jacob Coby