All,
I've just been tweaking some autovac settings for a large database, and
came to wonder: why does vacuum_max_freeze_age default to such a high
number? What's the logic behind that?
AFAIK, you want max_freeze_age to be the largest possible interval of
XIDs where an existing transaction might still be in scope, but no
larger. Yes?
If that's the case, I'd assert that users who do actually go through
100M XIDs within a transaction window are probably doing some
hand-tuning. And we could lower the default for most users
considerably, such as to 1 million.
Have I missed something?
--
Josh Berkus
PostgreSQL Experts Inc.
www.pgexperts.com