Thread: pgsql-server/contrib/pg_autovacuum Tag: REL7_4 ...
pgsql-server/contrib/pg_autovacuum Tag: REL7_4 ...
From
momjian@svr1.postgresql.org (Bruce Momjian)
Date:
CVSROOT: /cvsroot Module name: pgsql-server Changes by: momjian@svr1.postgresql.org 03/12/01 19:19:55 Modified files: contrib/pg_autovacuum: Tag: REL7_4_STABLE pg_autovacuum.c pg_autovacuum.h Log message: I've run across a pretty serious problem with pg_autovacuum. pg_autovacuum looses track of any table that's ever been truncated (possibly other situations too). When i truncate a table it gets a new relfilenode in pg_class. This is a problem because pg_autovacuum assumes pg_class.relfilenode will join to pg_stats_all_tables.relid. pg_stats_all_tables.relid is actallly the oid from pg_class, not the relfilenode. These two values start out equal so pg_autovacuum works initially, but it fails later on because of this incorrect assumption. This patch fixes that problem. Applied to HEAD and 7.4.X. Brian Hirt