|
36 | 36 | *
|
37 | 37 | *
|
38 | 38 | * IDENTIFICATION
|
39 |
| - * $PostgreSQL: pgsql/src/backend/commands/vacuumlazy.c,v 1.83 2007/02/04 03:10:55 momjian Exp $ |
| 39 | + * $PostgreSQL: pgsql/src/backend/commands/vacuumlazy.c,v 1.84 2007/02/21 22:15:21 momjian Exp $ |
40 | 40 | *
|
41 | 41 | *-------------------------------------------------------------------------
|
42 | 42 | */
|
@@ -180,6 +180,16 @@ lazy_vacuum_rel(Relation onerel, VacuumStmt *vacstmt)
|
180 | 180 | /* Update shared free space map with final free space info */
|
181 | 181 | lazy_update_fsm(onerel, vacrelstats);
|
182 | 182 |
|
| 183 | + if (vacrelstats->tot_free_pages > MaxFSMPages) |
| 184 | + ereport(WARNING, |
| 185 | + (errmsg("relation \"%s.%s\" contains more than \"max_fsm_pages\" pages with useful free space", |
| 186 | + get_namespace_name(RelationGetNamespace(onerel)), |
| 187 | + RelationGetRelationName(onerel)), |
| 188 | + errhint("Consider%sincreasing the configuration parameter \"max_fsm_pages\".", |
| 189 | + /* Only suggest VACUUM FULL if 20% free */ |
| 190 | + (vacrelstats->tot_free_pages > vacrelstats->rel_pages * 0.20 |
| 191 | + ? " using VACUUM FULL on this relation or ": " ")))); |
| 192 | + |
183 | 193 | /* Update statistics in pg_class */
|
184 | 194 | vac_update_relstats(RelationGetRelid(onerel),
|
185 | 195 | vacrelstats->rel_pages,
|
@@ -507,13 +517,6 @@ lazy_scan_heap(Relation onerel, LVRelStats *vacrelstats,
|
507 | 517 | vacrelstats->tot_free_pages,
|
508 | 518 | empty_pages,
|
509 | 519 | pg_rusage_show(&ru0))));
|
510 |
| - |
511 |
| - if (vacrelstats->tot_free_pages > MaxFSMPages) |
512 |
| - ereport(WARNING, |
513 |
| - (errmsg("relation \"%s.%s\" contains more than \"max_fsm_pages\" pages with useful free space", |
514 |
| - get_namespace_name(RelationGetNamespace(onerel)), |
515 |
| - relname), |
516 |
| - errhint("Consider using VACUUM FULL on this relation or increasing the configuration parameter \"max_fsm_pages\"."))); |
517 | 520 | }
|
518 | 521 |
|
519 | 522 |
|
|
0 commit comments