git.postgresql.org Git - postgresql.git/commit

git projects / postgresql.git / commit
? search:
summary | shortlog | log | commit | commitdiff | tree
(parent: 8fa393a) | patch
Add support for index-only scans in GiST.
2015年3月26日 17:12:00 +0000 (19:12 +0200)
2015年3月26日 17:12:00 +0000 (19:12 +0200)
commit d04c8ed9044eccebce043143a930617e3998c005
Add support for index-only scans in GiST.

This adds a new GiST opclass method, 'fetch', which is used to reconstruct
the original Datum from the value stored in the index. Also, the 'canreturn'
index AM interface function gains a new 'attno' argument. That makes it
possible to use index-only scans on a multi-column index where some of the
opclasses support index-only scans but some do not.

This patch adds support in the box and point opclasses. Other opclasses
can added later as follow-on patches (btree_gist would be particularly
interesting).

Anastasia Lubennikova, with additional fixes and modifications by me.
24 files changed:
doc/src/sgml/catalogs.sgml diff | blob | blame | history
doc/src/sgml/gist.sgml diff | blob | blame | history
doc/src/sgml/indexam.sgml diff | blob | blame | history
src/backend/access/gist/gist.c diff | blob | blame | history
src/backend/access/gist/gistget.c diff | blob | blame | history
src/backend/access/gist/gistproc.c diff | blob | blame | history
src/backend/access/gist/gistscan.c diff | blob | blame | history
src/backend/access/gist/gistutil.c diff | blob | blame | history
src/backend/access/index/indexam.c diff | blob | blame | history
src/backend/access/spgist/spgscan.c diff | blob | blame | history
src/backend/optimizer/path/indxpath.c diff | blob | blame | history
src/backend/optimizer/util/plancat.c diff | blob | blame | history
src/include/access/genam.h diff | blob | blame | history
src/include/access/gist.h diff | blob | blame | history
src/include/access/gist_private.h diff | blob | blame | history
src/include/catalog/catversion.h diff | blob | blame | history
src/include/catalog/pg_am.h diff | blob | blame | history
src/include/catalog/pg_amproc.h diff | blob | blame | history
src/include/catalog/pg_proc.h diff | blob | blame | history
src/include/nodes/relation.h diff | blob | blame | history
src/include/utils/geo_decls.h diff | blob | blame | history
src/test/regress/expected/create_index.out diff | blob | blame | history
src/test/regress/expected/gist.out diff | blob | blame | history
src/test/regress/sql/gist.sql diff | blob | blame | history
This is the main PostgreSQL git repository.
RSS Atom

AltStyle によって変換されたページ (->オリジナル) /