aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/gist
diff options
context:
space:
mode:
authorTeodor Sigaev <teodor@sigaev.ru>2005-09-16 14:40:54 +0000
committerTeodor Sigaev <teodor@sigaev.ru>2005-09-16 14:40:54 +0000
commitf4516f87322b87ff40ce76cd51b71efe02ad1886 (patch)
tree16b33d4d8084e3b53372aa8def0544b6f1aa3ce0 /src/backend/access/gist
parent3f558e3daeec6e87b509d4c816480edf1931b609 (diff)
downloadpostgresql-f4516f87322b87ff40ce76cd51b71efe02ad1886.tar.gz
postgresql-f4516f87322b87ff40ce76cd51b71efe02ad1886.zip
Small fixes
Diffstat (limited to 'src/backend/access/gist')
-rw-r--r--src/backend/access/gist/README18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/backend/access/gist/README b/src/backend/access/gist/README
index b47c5d330aa..1d828b30ffe 100644
--- a/src/backend/access/gist/README
+++ b/src/backend/access/gist/README
@@ -1,4 +1,4 @@
-$PostgreSQL: pgsql/src/backend/access/gist/README,v 1.2 2005/09/15 17:44:27 neilc Exp $
+$PostgreSQL: pgsql/src/backend/access/gist/README,v 1.3 2005/09/16 14:40:54 teodor Exp $
This directory contains an implementation of GiST indexing for Postgres.
@@ -21,7 +21,9 @@ The current implementation of GiST supports:
* Concurrency
* Recovery support via WAL logging
-The support for concurrency implemented in PostgreSQL was developed based on the paper "Access Methods for Next-Generation Database Systems" by Marcel Kornaker:
+The support for concurrency implemented in PostgreSQL was developed based on
+the paper "Access Methods for Next-Generation Database Systems" by
+Marcel Kornaker:
http://www.sai.msu.su/~megera/postgres/gist/papers/concurrency/access-methods-for-next-generation.pdf.gz
@@ -31,11 +33,11 @@ The original algorithms were modified in several ways:
algorithm was considerably changed, because in PostgreSQL function search
should return one tuple (next), not all tuples at once. Also, it should
release page locks between calls.
-* Since we added support for variable length keys, it's not possible to guarantee
- enough free space for all keys on pages after splitting. User defined function
- picksplit doesn't have information about size of tuples (each tuple may
- contain several keys as in multicolumn index while picksplit could work with
- only one key) and pages.
+* Since we added support for variable length keys, it's not possible to
+ guarantee enough free space for all keys on pages after splitting. User
+ defined function picksplit doesn't have information about size of tuples
+ (each tuple may contain several keys as in multicolumn index while picksplit
+ could work with only one key) and pages.
* We modified original INSERT algorithm for performance reason. In particular,
it is now a single-pass algorithm.
* Since the papers were theoretical, some details were omitted and we
@@ -197,7 +199,7 @@ placetopage(page, keysarray)
if ( no space left on page )
keysarray = pageSplit(page, [ extract_keys(page), keysarray])
last page in chain gets old NSN,
- original and others - new NSN from current LSN
+ original and others - new NSN equals to LSN
if ( page is root )
make new root with keysarray
end