Skip to content

Commit 3c6e719

Browse files
committed
Fix typo in freeze_table_age implementation
The original code used freeze_min_age instead of freeze_table_age. The main consequence of this mistake is that lowering freeze_min_age would cause full-table scans to occur much more frequently, which causes serious issues because the number of writes required is much larger. That feature (freeze_min_age) is supposed to affect only how soon tuples are frozen; some pages should still be skipped due to the visibility map. Backpatch to 8.4, where the freeze_table_age feature was introduced. Report and patch from Andres Freund
1 parent 1d857a6 commit 3c6e719

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

src/backend/commands/vacuum.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -434,7 +434,7 @@ vacuum_set_xid_limits(int freeze_min_age,
434434
* VACUUM schedule, the nightly VACUUM gets a chance to freeze tuples
435435
* before anti-wraparound autovacuum is launched.
436436
*/
437-
freezetable = freeze_min_age;
437+
freezetable = freeze_table_age;
438438
if (freezetable < 0)
439439
freezetable = vacuum_freeze_table_age;
440440
freezetable = Min(freezetable, autovacuum_freeze_max_age * 0.95);

0 commit comments

Comments
 (0)