OSDN Git Service

KNNGIST, otherwise known as order-by-operator support for GIST.
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 4 Dec 2010 01:52:18 +0000 (20:52 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 4 Dec 2010 01:53:29 +0000 (20:53 -0500)
commit554506871bd3a73a5d9fa4ee3aa0b0fbf406f8ab
tree92d303d13214cc8dc37d5891f1df3a66b6f3ab53
parentc0a4d3e0511b4d1f7996451329deaa2acd0e18fa
KNNGIST, otherwise known as order-by-operator support for GIST.

This commit represents a rather heavily editorialized version of
Teodor's builtin_knngist_itself-0.8.2 and builtin_knngist_proc-0.8.1
patches.  I redid the opclass API to add a separate Distance method
instead of turning the Consistent method into an illogical mess,
fixed some bit-rot in the rbtree interfaces, and generally worked over
the code style and comments.

There's still no non-code documentation to speak of, but I'll work on
that separately.  Some contrib-module changes are also yet to come
(right now, point <-> point is the only KNN-ified operator).

Teodor Sigaev and Tom Lane
16 files changed:
src/backend/access/gist/gist.c
src/backend/access/gist/gistget.c
src/backend/access/gist/gistproc.c
src/backend/access/gist/gistscan.c
src/include/access/gist.h
src/include/access/gist_private.h
src/include/catalog/catversion.h
src/include/catalog/pg_am.h
src/include/catalog/pg_amop.h
src/include/catalog/pg_amproc.h
src/include/catalog/pg_proc.h
src/include/utils/geo_decls.h
src/test/regress/expected/create_index.out
src/test/regress/expected/opr_sanity.out
src/test/regress/sql/create_index.sql
src/test/regress/sql/opr_sanity.sql