Modify output of VACUUM VERBOSE to be clearer.
authorBruce Momjian
Sat, 23 Apr 2005 15:20:39 +0000 (15:20 +0000)
committerBruce Momjian
Sat, 23 Apr 2005 15:20:39 +0000 (15:20 +0000)
src/backend/storage/freespace/freespace.c

index f666ce9f69ed0fd725681ed817d49b07785ad42d..d0f289a29c1797afaf79b919684a36a597bd6ad3 100644 (file)
@@ -8,7 +8,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *   $PostgreSQL: pgsql/src/backend/storage/freespace/freespace.c,v 1.39 2005/03/14 20:15:09 momjian Exp $
+ *   $PostgreSQL: pgsql/src/backend/storage/freespace/freespace.c,v 1.40 2005/04/23 15:20:39 momjian Exp $
  *
  *
  * NOTES:
@@ -699,6 +699,7 @@ PrintFreeSpaceMapStatistics(int elevel)
         fsmrel != NULL;
         fsmrel = fsmrel->nextPhysical)
        storedPages += fsmrel->storedPages;
+
    /* Copy other stats before dropping lock */
    numRels = FreeSpaceMap->numRels;
    sumRequests = FreeSpaceMap->sumRequests;
@@ -708,11 +709,20 @@ PrintFreeSpaceMapStatistics(int elevel)
    needed = (sumRequests + numRels) * CHUNKPAGES;
 
    ereport(elevel,
-           (errmsg("free space map: %d relations, %d pages stored; %.0f total pages used",
-                   numRels, storedPages, needed),
-            errdetail("FSM size: %d relations + %d pages = %.0f kB shared memory.",
-                      MaxFSMRelations, MaxFSMPages,
-                      (double) FreeSpaceShmemSize() / 1024.0)));
+           (errmsg("free space map contains information about:")));
+
+   ereport(elevel,
+           (errmsg("%d relations, limit %d relations",
+                   numRels, MaxFSMRelations)));
+
+   ereport(elevel,
+           (errmsg("%d pages with free space, %.0f pages (with overhead)",
+                   storedPages, Min(needed, MaxFSMPages))));
+
+   ereport(elevel,
+           (errmsg("%.0f pages required to track all freespace, limit %d pages (%.0f kB)",
+                   needed, MaxFSMPages,
+                  (double) FreeSpaceShmemSize() / 1024.0)));
 
    CheckFreeSpaceMapStatistics(NOTICE, numRels, needed);
    /* Print to server logs too because is deals with a config variable. */