Andres Freund wrote:
> If youre careful you can also notice that there is an interesting typo
> in the freeze table computation. Namely it uses freeze_min_age instead
> of freeze_table_age. Which probably explains why I had so bad
> performance results with lowering vacuum_freeze_min_age, it basically
> radically increases the amount of full-table-scans, far more than it
> should.
>
> I can't imagine that anybody with a large database ran pg successfully
> with a small freeze_min_age due to this.
>
> It seems to be broken since the initial introduction of freeze_table_age
> in 6587818542e79012276dcfedb2f97e3522ee5e9b. I guess it wasn't noticed
> because the behaviour is only visible via autovacuum because a
> user-issued VACUUM passes -1 as freeze_min_age.
Backpatched all the way back to 8.4
--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services