Fwd: vacuuming template0 gave ERROR

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I have the discussion below in which it is advised that template0 should not be touched, however, my production v8.1.4 template0 and 1 database XID "age", determined with the following query, changes constantly:-
 
select datname, age(datfrozenxid), datfrozenxid, current_date, current_time FROM pg_database
 
If template0 shouldn't be touched (and I don't know of deliberate access to it), why is this changing please? template0 currently returns -1797761636 (a minus number), and template1 returns 1436634067 and is growing constantly. Should I be doing a vacuum full on them both, and is this activity normal please? I'm concerned the XID / wraparound age will expire eventually.
 
Adrian
---------- Forwarded message ----------
From: Tom Lane < tgl@xxxxxxxxxxxxx>
Date: Dec 27, 2005 5:02 AM
Subject: Re: [ADMIN] vacuuming template0 gave ERROR
To: Gourish Singbal < gourish@xxxxxxxxx>
Cc: "pgsql-admin@xxxxxxxxxxxxxx " < pgsql-admin@xxxxxxxxxxxxxx>

Gourish Singbal <gourish@xxxxxxxxx> writes:
> Got the following ERROR when i was vacuuming the template0 database.

Why were you doing that in the first place?  template0 shouldn't ever
be touched.

> postgresql server version is 7.4.5

The underlying cause is likely related to this 7.4.6 bug fix:

2004-10-13 18:22  tgl

       * contrib/pgstattuple/pgstattuple.c,
       src/backend/access/heap/heapam.c,
       src/backend/utils/adt/ri_triggers.c (REL7_4_STABLE): Repair
       possible failure to update hint bits back to disk, per
       http://archives.postgresql.org/pgsql-hackers/2004-10/msg00464.php .
       I plan a more permanent fix in HEAD, but for the back branches it
       seems best to just touch the places that actually have a problem.


> INFO:  vacuuming "pg_catalog.pg_statistic"
> ERROR:  could not access status of transaction 1107341112
> DETAIL:  could not open file "/home/postgres/data/pg_clog/0420": No such
> file or directory

Fortunately for you, pg_statistic doesn't contain any irreplaceable
data.  So you could get out of this via

       TRUNCATE pg_statistic;
       VACUUM ANALYZE;  -- rebuild contents of pg_statistic
       VACUUM FREEZE;   -- make sure template0 needs no further vacuuming

Then reset template0's datallowconn to false, and get rid of that code
to override it.  And then update to a more recent release ;-)

(I don't recall exactly what rules 7.4 uses, but likely you'll find that
you need to run a standalone backend with -O switch to perform
TRUNCATE on a system catalog.)

                       regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
      choose an index scan if your joining column's datatypes do not
      match
 




At the Datamail Group we value team commitment, respect, achievement, customer focus, and courage.

This email with any attachments is confidential and may be subject to legal privilege. If it is not intended for you please advise by reply immediately, destroy it and do not copy, disclose or use it in any way.


 



This email has been scanned by the DMZGlobal Business Quality Electronic Messaging Suite.
Please see http://www.dmzglobal.com/services/bqem.htm for details.



 

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux