From 9322a04759c212ec94c18cf185a7f016a668b722 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Fri, 2 Dec 2005 04:28:19 +0000 Subject: [PATCH] Add calcluation of bitmap storage capacity. < be cleared when a heap tuple is expired. Another idea is to maintain < a bitmap of heap pages where all rows are visible to all backends, < and allow index lookups to reference that bitmap to avoid heap < lookups, perhaps the same bitmap we might add someday to determine < which heap pages need vacuuming. > be cleared when a heap tuple is expired. > > Another idea is to maintain a bitmap of heap pages where all rows > are visible to all backends, and allow index lookups to reference > that bitmap to avoid heap lookups, perhaps the same bitmap we might > add someday to determine which heap pages need vacuuming. Frequently > accessed bitmaps would have to be stored in shared memory. One 8k > page of bitmaps could track 512MB of heap pages. --- doc/TODO | 15 +++++++++------ doc/src/FAQ/TODO.html | 15 +++++++++------ 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/doc/TODO b/doc/TODO index c3bf43a5f8..283f99ae05 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: Thu Dec 1 17:30:23 EST 2005 +Last updated: Thu Dec 1 23:28:03 EST 2005 The most recent version of this document can be viewed at http://www.postgresql.org/docs/faqs.TODO.html. @@ -862,11 +862,14 @@ Cache Usage the heap. One way to allow this is to set a bit on index tuples to indicate if a tuple is currently visible to all transactions when the first valid heap lookup happens. This bit would have to - be cleared when a heap tuple is expired. Another idea is to maintain - a bitmap of heap pages where all rows are visible to all backends, - and allow index lookups to reference that bitmap to avoid heap - lookups, perhaps the same bitmap we might add someday to determine - which heap pages need vacuuming. + be cleared when a heap tuple is expired. + + Another idea is to maintain a bitmap of heap pages where all rows + are visible to all backends, and allow index lookups to reference + that bitmap to avoid heap lookups, perhaps the same bitmap we might + add someday to determine which heap pages need vacuuming. Frequently + accessed bitmaps would have to be stored in shared memory. One 8k + page of bitmaps could track 512MB of heap pages. * Consider automatic caching of queries at various levels: diff --git a/doc/src/FAQ/TODO.html b/doc/src/FAQ/TODO.html index 7e4961eaa7..ad86692169 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: Thu Dec 1 17:30:23 EST 2005 +Last updated: Thu Dec 1 23:28:03 EST 2005

The most recent version of this document can be viewed at
http://www.postgresql.org/docs/faqs.TODO.html. @@ -781,11 +781,14 @@ first. the heap. One way to allow this is to set a bit on index tuples to indicate if a tuple is currently visible to all transactions when the first valid heap lookup happens. This bit would have to - be cleared when a heap tuple is expired. Another idea is to maintain - a bitmap of heap pages where all rows are visible to all backends, - and allow index lookups to reference that bitmap to avoid heap - lookups, perhaps the same bitmap we might add someday to determine - which heap pages need vacuuming. + be cleared when a heap tuple is expired. +

+

Another idea is to maintain a bitmap of heap pages where all rows + are visible to all backends, and allow index lookups to reference + that bitmap to avoid heap lookups, perhaps the same bitmap we might + add someday to determine which heap pages need vacuuming. Frequently + accessed bitmaps would have to be stored in shared memory. One 8k + page of bitmaps could track 512MB of heap pages.

  • Consider automatic caching of queries at various levels: