Thread: More than 1 pg_database Entry for Database - Thread #2
Howdy,
I am running version 8.3.3 and encountered a problem with my pg_dump failing a couple weeks back with the following error:
pg_dump: query returned more than one (2) pg_database entry for database "sqlsnbs"
pg_dumpall: pg_dump failed on database "sqlsnbs", exiting
I followed your thread here:
http://www.mail-archive.com/pgsql-admin@postgresql.org/msg25978.html
in an attempt to resolve the problem and in the end, just like was stated in the above thread, I ended up dumping the old Postgres environment into a new initialized one to resolve the problem.
I did not capture the queries I was running at the time of diagnosing but I can summarize. I ran the following query:
select xmin, cmin, xmax, cmax, oid, ctid, datname from pg_database;
which returned the same oid and different xmax for each row of the duplicate database. One xmax was 0 and the other was 3.7 billion. In your thread above it was stated by Tom Lane that the large xmax number may indicate a problem with xid wraparound and that the problem row was never vacuumed away due to broken vacuuming procedures. We were running with auto-vacuum turned on and I verified that it was working by querying pg_stat_all_tables.
I was wondering if you could please answer the following for me to help mitigate this in the future:
1. Should I be running a scheduled vacuum analyze in addition to the auto-vacuum?
2. Should I be running a scheduled vacuum full?
3. Does 8.4 address this problem?
Thank you,
Sam