Table of Contents
purge -- discard historical data
purge classname [ before
abstime ] [ after reltime ]
Purge allows a user to specify
the historical retention properties of a class. If the date specified
is an absolute time such as `Jan 1 1987', Postgres will discard tuples whose
validity expired before the indicated time. Purge with no before clause
is equivalent to `purge before now'. Until specified with a purge command,
instance preservation defaults to `forever'.
The user may purge a class at
any time as long as the purge date never decreases. Postgres will enforce
this restriction, silently.
Note that the purge command does not do anything
except set a parameter for system operation. Use vacuum(l)
to enforce
this parameter.
--
--Always discard data in the EMP class
--prior
to January 1, 1989
--
purge EMP before "Jan 1 1989"
--
--Retain only the
current data in EMP
--
purge EMP
vacuum(l)
.
Error messages are quite unhelpful. A complaint about `inconsistent times'
followed by several nine-digit numbers indicates an attempt to `back up'
a purge date on a relation.
You cannot purge certain system catalogs (namely,
`pg_class', `pg_attribute', `pg_am', and `pg_amop') due to circularities in the
system catalog code.
This definition of the purge command is really only
useful for non-archived relations, since tuples will not be discarded
from archive relations (they are never vacuumed).
Table of Contents