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

git projects / postgresql.git / commit
? search:
summary | shortlog | log | commit | commitdiff | tree
(parent: d0cfc3d) | patch
Add support for nearest-neighbor (KNN) searches to SP-GiST
2018年9月18日 22:54:10 +0000 (01:54 +0300)
2018年9月18日 22:54:10 +0000 (01:54 +0300)
commit 2a6368343ff43743ddd90d0f4c2d0ac03e18aa85
Add support for nearest-neighbor (KNN) searches to SP-GiST

Currently, KNN searches were supported only by GiST. SP-GiST also capable to
support them. This commit implements that support. SP-GiST scan stack is
replaced with queue, which serves as stack if no ordering is specified. KNN
support is provided for three SP-GIST opclasses: quad_point_ops, kd_point_ops
and poly_ops (catversion is bumped). Some common parts between GiST and SP-GiST
KNNs are extracted into separate functions.

Discussion: https://postgr.es/m/570825e8-47d0-4732-2bf6-88d67d2d51c8%40postgrespro.ru
Author: Nikita Glukhov, Alexander Korotkov based on GSoC work by Vlad Sterzhanov
Review: Andrey Borodin, Alexander Korotkov
29 files changed:
doc/src/sgml/indices.sgml diff | blob | blame | history
doc/src/sgml/spgist.sgml diff | blob | blame | history
doc/src/sgml/xindex.sgml diff | blob | blame | history
src/backend/access/gist/gistget.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/Makefile diff | blob | blame | history
src/backend/access/spgist/README diff | blob | blame | history
src/backend/access/spgist/spgkdtreeproc.c diff | blob | blame | history
src/backend/access/spgist/spgproc.c [new file with mode: 0644] blob
src/backend/access/spgist/spgquadtreeproc.c diff | blob | blame | history
src/backend/access/spgist/spgscan.c diff | blob | blame | history
src/backend/access/spgist/spgutils.c diff | blob | blame | history
src/backend/access/spgist/spgvalidate.c diff | blob | blame | history
src/backend/utils/adt/geo_spgist.c diff | blob | blame | history
src/backend/utils/cache/lsyscache.c diff | blob | blame | history
src/include/access/genam.h diff | blob | blame | history
src/include/access/spgist.h diff | blob | blame | history
src/include/access/spgist_private.h diff | blob | blame | history
src/include/catalog/catversion.h diff | blob | blame | history
src/include/catalog/pg_amop.dat diff | blob | blame | history
src/include/utils/lsyscache.h diff | blob | blame | history
src/test/regress/expected/amutils.out diff | blob | blame | history
src/test/regress/expected/create_index.out diff | blob | blame | history
src/test/regress/expected/opr_sanity.out diff | blob | blame | history
src/test/regress/expected/polygon.out diff | blob | blame | history
src/test/regress/sql/amutils.sql diff | blob | blame | history
src/test/regress/sql/create_index.sql diff | blob | blame | history
src/test/regress/sql/polygon.sql diff | blob | blame | history
This is the main PostgreSQL git repository.
RSS Atom

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