On Thu, Jun 25, 2009 at 4:39 PM, Kevin
Kempter<kevink@consistentstate.com> wrote:
>
> we're inserting an average of 70-100 rows per second into these tables.
Hm. And every row is a separate transaction? That's still only a few
hundred rows per second. About 25 million per day. You should have
about 4 days before it hits autovacuum_freeze_max_age-vacuum_freeze_min_age.
Are you using subtransactions heavily (savepoints in sql or exception
clauses in plpgsql)? That could add a multiplier or two to the number
of transaction ids used up.
You can raise autovacuum_freeze_max_age to, say, 800 million to get
four times longer before the autovacuum kicks in. You can also lower
vacuum_freeze_min_age to maybe 25 million. That will give you about
775 million transaction ids, almost 8x what you have now, which will
hopefully give you about a week before autovacuum tries to freeze the
table
--
greg
http://mit.edu/~gsstark/resume.pdf