Manual anti-wraparound vacuums

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgreSQL(dot)org
Subject: Manual anti-wraparound vacuums
Date: 2011-11-11 14:59:11
Message-ID: 4760.1321023551@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

In another thread, Alvaro quoted from the manual:
> If for some reason autovacuum fails to clear old XIDs from a table, the
> system will begin to emit warning messages like this when the database's oldest
> XIDs reach ten million transactions from the wraparound point:

> WARNING: database "mydb" must be vacuumed within 177009986 transactions
> HINT: To avoid a database shutdown, execute a database-wide VACUUM in "mydb".

> (A manual VACUUM should fix the problem, as suggested by the hint; but
> note that the VACUUM must be performed by a superuser, else it will fail to
> process system catalogs and thus not be able to advance the database's
> datfrozenxid.)

It occurs to me to wonder how this scenario will interact with the
recent changes to let VACUUM skip pages. AFAIR there is not a way for a
manual VACUUM to set the anti-wraparound mode, is there? Perhaps manual
VACUUMs should not have the page skip behavior at all?

regards, tom lane

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2011-11-11 15:01:34 Re: why do we need two snapshots per query?
Previous Message Robert Haas 2011-11-11 14:54:27 Re: Rename trace_userlocks? WAS Re: LOCK_DEBUG is busted