diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2006-09-21 20:31:22 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2006-09-21 20:31:22 +0000 |
commit | 9e936693a9fc464511b52b14fb681cdea014bf59 (patch) | |
tree | 2781b3043a8b46dcf3d40d6410d2b7b970fa0b5e /contrib/pg_freespacemap/pg_freespacemap.c | |
parent | b0d64a090b14217c9bcf620a32c60eab1354470f (diff) | |
download | postgresql-9e936693a9fc464511b52b14fb681cdea014bf59.tar.gz postgresql-9e936693a9fc464511b52b14fb681cdea014bf59.zip |
Fix free space map to correctly track the total amount of FSM space needed
even when a single relation requires more than max_fsm_pages pages. Also,
make VACUUM emit a warning in this case, since it likely means that VACUUM
FULL or other drastic corrective measure is needed. Per reports from Jeff
Frost and others of unexpected changes in the claimed max_fsm_pages need.
Diffstat (limited to 'contrib/pg_freespacemap/pg_freespacemap.c')
-rw-r--r-- | contrib/pg_freespacemap/pg_freespacemap.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/contrib/pg_freespacemap/pg_freespacemap.c b/contrib/pg_freespacemap/pg_freespacemap.c index 0ab99482ff5..9ce8422157f 100644 --- a/contrib/pg_freespacemap/pg_freespacemap.c +++ b/contrib/pg_freespacemap/pg_freespacemap.c @@ -3,7 +3,7 @@ * pg_freespacemap.c * display some contents of the free space relation and page maps. * - * $PostgreSQL: pgsql/contrib/pg_freespacemap/pg_freespacemap.c,v 1.6 2006/05/30 22:12:13 tgl Exp $ + * $PostgreSQL: pgsql/contrib/pg_freespacemap/pg_freespacemap.c,v 1.7 2006/09/21 20:31:21 tgl Exp $ *------------------------------------------------------------------------- */ #include "postgres.h" @@ -53,7 +53,7 @@ typedef struct Oid reldatabase; Oid relfilenode; Size avgrequest; - int lastpagecount; + BlockNumber interestingpages; int storedpages; int nextpage; bool isindex; @@ -303,7 +303,7 @@ pg_freespacemap_relations(PG_FUNCTION_ARGS) OIDOID, -1, 0); TupleDescInitEntry(tupledesc, (AttrNumber) 4, "avgrequest", INT4OID, -1, 0); - TupleDescInitEntry(tupledesc, (AttrNumber) 5, "lastpagecount", + TupleDescInitEntry(tupledesc, (AttrNumber) 5, "interestingpages", INT4OID, -1, 0); TupleDescInitEntry(tupledesc, (AttrNumber) 6, "storedpages", INT4OID, -1, 0); @@ -334,7 +334,7 @@ pg_freespacemap_relations(PG_FUNCTION_ARGS) fctx->record[i].reldatabase = fsmrel->key.dbNode; fctx->record[i].relfilenode = fsmrel->key.relNode; fctx->record[i].avgrequest = (int64)fsmrel->avgRequest; - fctx->record[i].lastpagecount = fsmrel->lastPageCount; + fctx->record[i].interestingpages = fsmrel->interestingPages; fctx->record[i].storedpages = fsmrel->storedPages; fctx->record[i].nextpage = fsmrel->nextPage; fctx->record[i].isindex = fsmrel->isIndex; @@ -380,7 +380,7 @@ pg_freespacemap_relations(PG_FUNCTION_ARGS) values[3] = UInt32GetDatum(record->avgrequest); nulls[3] = false; } - values[4] = Int32GetDatum(record->lastpagecount); + values[4] = Int32GetDatum(record->interestingpages); nulls[4] = false; values[5] = Int32GetDatum(record->storedpages); nulls[5] = false; |