From 55af2a43372f0fe9da312b8db35874a18a226143 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Fri, 2 Sep 2005 00:49:57 +0000 Subject: [PATCH] Duplicate: < * Maintain a map of recently-expired rows < < This allows vacuum to target specific pages for possible free space < without requiring a sequential scan. < Update entry: > One complexity is that index entries still have to be vacuumed, and > doing this without an index scan (by using the heap values to find the > index entry) might be slow and unreliable, especially for user-defined > index functions. --- doc/TODO | 11 +++++------ doc/src/FAQ/TODO.html | 10 +++++----- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/doc/TODO b/doc/TODO index ab145472bd..7c88a4afe3 100644 --- a/doc/TODO +++ b/doc/TODO @@ -2,7 +2,7 @@ PostgreSQL TODO List ==================== Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us) -Last updated: Tue Aug 30 19:25:23 EDT 2005 +Last updated: Thu Sep 1 20:49:44 EDT 2005 The most recent version of this document can be viewed at http://www.postgresql.org/docs/faqs.TODO.html. @@ -810,11 +810,6 @@ Vacuum write lock. However, the read lock promotion to write lock could lead to deadlock situations. -* Maintain a map of recently-expired rows - - This allows vacuum to target specific pages for possible free space - without requiring a sequential scan. - * Auto-fill the free space map by scanning the buffer cache or by checking pages written by the background writer * Create a bitmap of pages that need vacuuming @@ -823,6 +818,10 @@ Vacuum writer or some other process record pages that have expired rows, then VACUUM can look at just those pages rather than the entire table. In the event of a system crash, the bitmap would probably be invalidated. + One complexity is that index entries still have to be vacuumed, and + doing this without an index scan (by using the heap values to find the + index entry) might be slow and unreliable, especially for user-defined + index functions. * %Add system view to show free space map contents diff --git a/doc/src/FAQ/TODO.html b/doc/src/FAQ/TODO.html index 734597a964..f24c9a5605 100644 --- a/doc/src/FAQ/TODO.html +++ b/doc/src/FAQ/TODO.html @@ -8,7 +8,7 @@

PostgreSQL TODO List

Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us)
-Last updated: Tue Aug 30 19:25:23 EDT 2005 +Last updated: Thu Sep 1 20:49:44 EDT 2005

The most recent version of this document can be viewed at
http://www.postgresql.org/docs/faqs.TODO.html. @@ -731,10 +731,6 @@ first. write lock. However, the read lock promotion to write lock could lead to deadlock situations.

-
  • Maintain a map of recently-expired rows -

    This allows vacuum to target specific pages for possible free space - without requiring a sequential scan. -

  • Auto-fill the free space map by scanning the buffer cache or by checking pages written by the background writer
  • Create a bitmap of pages that need vacuuming @@ -742,6 +738,10 @@ first. writer or some other process record pages that have expired rows, then VACUUM can look at just those pages rather than the entire table. In the event of a system crash, the bitmap would probably be invalidated. + One complexity is that index entries still have to be vacuumed, and + doing this without an index scan (by using the heap values to find the + index entry) might be slow and unreliable, especially for user-defined + index functions.

  • %Add system view to show free space map contents
  • Auto-vacuum -- 2.11.0