aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlvaro Herrera <alvherre@alvh.no-ip.org>2013-02-01 12:00:40 -0300
committerAlvaro Herrera <alvherre@alvh.no-ip.org>2013-02-01 12:00:40 -0300
commitdd1569da67937b819d1589a9f664af9aa9657945 (patch)
tree8628c47282c1d4710584074efe954e9d8a8802f8 /src
parent9ee00ef4c7de991b9371f614ce9c03ff436ce383 (diff)
downloadpostgresql-dd1569da67937b819d1589a9f664af9aa9657945.tar.gz
postgresql-dd1569da67937b819d1589a9f664af9aa9657945.zip
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
Diffstat (limited to 'src')
-rw-r--r--src/backend/commands/vacuum.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/backend/commands/vacuum.c b/src/backend/commands/vacuum.c
index a37a54e5b42..4800b437640 100644
--- a/src/backend/commands/vacuum.c
+++ b/src/backend/commands/vacuum.c
@@ -449,7 +449,7 @@ vacuum_set_xid_limits(int freeze_min_age,
* VACUUM schedule, the nightly VACUUM gets a chance to freeze tuples
* before anti-wraparound autovacuum is launched.
*/
- freezetable = freeze_min_age;
+ freezetable = freeze_table_age;
if (freezetable < 0)
freezetable = vacuum_freeze_table_age;
freezetable = Min(freezetable, autovacuum_freeze_max_age * 0.95);