pgsql: Add BRIN infrastructure for "inclusion" opclasses

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Add BRIN infrastructure for "inclusion" opclasses
Date: 2015-05-15 21:05:17
Message-ID: E1YtMnF-0007LT-Lt@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Add BRIN infrastructure for "inclusion" opclasses

This lets BRIN be used with R-Tree-like indexing strategies.

Also provided are operator classes for range types, box and inet/cidr.
The infrastructure provided here should be sufficient to create operator
classes for similar datatypes; for instance, opclasses for PostGIS
geometries should be doable, though we didn't try to implement one.

(A box/point opclass was also submitted, but we ripped it out before
commit because the handling of floating point comparisons in existing
code is inconsistent and would generate corrupt indexes.)

Author: Emre Hasegeli. Cosmetic changes by me
Review: Andreas Karlsson

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/b0b7be61337fc64147f2ad0af5bf2c0e6b8a709f

Modified Files
--------------
doc/src/sgml/brin.sgml | 53 ++-
src/backend/access/brin/Makefile | 2 +-
src/backend/access/brin/brin.c | 90 +---
src/backend/access/brin/brin_inclusion.c | 696 ++++++++++++++++++++++++++++++
src/backend/access/brin/brin_minmax.c | 7 +
src/backend/utils/adt/network_gist.c | 4 +-
src/include/access/brin_internal.h | 6 -
src/include/access/stratnum.h | 4 +-
src/include/catalog/catversion.h | 2 +-
src/include/catalog/pg_am.h | 3 +-
src/include/catalog/pg_amop.h | 37 ++
src/include/catalog/pg_amproc.h | 23 +
src/include/catalog/pg_opclass.h | 6 +-
src/include/catalog/pg_opfamily.h | 3 +
src/include/catalog/pg_proc.h | 10 +
src/test/regress/expected/brin.out | 31 +-
src/test/regress/expected/opr_sanity.out | 25 +-
src/test/regress/sql/brin.sql | 31 +-
18 files changed, 928 insertions(+), 105 deletions(-)

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message David Steele 2015-05-15 21:07:00 Re: pgsql: Add pg_audit, an auditing extension
Previous Message Tom Lane 2015-05-15 21:03:40 pgsql: Improve test for CONVERT() with GB18030 <-> UTF8.