pgsql: KNNGIST, otherwise known as order-by-operator support for GIST.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: KNNGIST, otherwise known as order-by-operator support for GIST.
Date: 2010-12-04 01:53:52
Message-ID: E1POhJw-0001OX-A0@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

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

Branch
------
master

Details
-------
http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=554506871bd3a73a5d9fa4ee3aa0b0fbf406f8ab

Modified Files
--------------
src/backend/access/gist/gist.c | 10 +
src/backend/access/gist/gistget.c | 819 +++++++++++++++-------------
src/backend/access/gist/gistproc.c | 97 ++++-
src/backend/access/gist/gistscan.c | 179 +++++--
src/include/access/gist.h | 10 +-
src/include/access/gist_private.h | 117 +++--
src/include/catalog/catversion.h | 2 +-
src/include/catalog/pg_am.h | 2 +-
src/include/catalog/pg_amop.h | 1 +
src/include/catalog/pg_amproc.h | 1 +
src/include/catalog/pg_proc.h | 4 +-
src/include/utils/geo_decls.h | 1 +
src/test/regress/expected/create_index.out | 136 +++++
src/test/regress/expected/opr_sanity.out | 29 +-
src/test/regress/sql/create_index.sql | 36 ++
src/test/regress/sql/opr_sanity.sql | 26 +-
16 files changed, 972 insertions(+), 498 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2010-12-04 03:43:36 pgsql: Put back gistgettuple's check for backwards scan request.
Previous Message Robert Haas 2010-12-03 14:30:03 pgsql: Clarify that LOCK TABLE requires a table-level privilege.