pgsql: Add stratnum GiST support function

From: Peter Eisentraut <peter(at)eisentraut(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Add stratnum GiST support function
Date: 2024-01-19 14:47:40
Message-ID: E1rQq9k-0029mP-5b@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Add stratnum GiST support function

This is support function 12 for the GiST AM and translates
"well-known" RT*StrategyNumber values into whatever strategy number is
used by the opclass (since no particular numbers are actually
required). We will use this to support temporal PRIMARY
KEY/UNIQUE/FOREIGN KEY/FOR PORTION OF functionality.

This commit adds two implementations, one for internal GiST opclasses
(just an identity function) and another for btree_gist opclasses. It
updates btree_gist from 1.7 to 1.8, adding the support function for
all its opclasses.

Author: Paul A. Jungwirth <pj(at)illuminatedcomputing(dot)com>
Reviewed-by: Peter Eisentraut <peter(at)eisentraut(dot)org>
Reviewed-by: jian he <jian(dot)universality(at)gmail(dot)com>
Discussion: https://www.postgresql.org/message-id/flat/CA+renyUApHgSZF9-nd-a0+OPGharLQLO=mDHcY4_qQ0+noCUVg(at)mail(dot)gmail(dot)com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/6db4598fcb82a87a683c4572707e522504830a2b

Modified Files
--------------
contrib/btree_gist/Makefile | 6 +-
contrib/btree_gist/btree_gist--1.7--1.8.sql | 87 ++++++++++++++++++++++++++++
contrib/btree_gist/btree_gist.c | 27 +++++++++
contrib/btree_gist/btree_gist.control | 2 +-
contrib/btree_gist/expected/stratnum.out | 13 +++++
contrib/btree_gist/meson.build | 2 +
contrib/btree_gist/sql/stratnum.sql | 3 +
doc/src/sgml/gist.sgml | 65 ++++++++++++++++++++-
doc/src/sgml/xindex.sgml | 8 ++-
src/backend/access/gist/gistutil.c | 14 +++++
src/backend/access/gist/gistvalidate.c | 8 ++-
src/include/access/gist.h | 3 +-
src/include/catalog/catversion.h | 2 +-
src/include/catalog/pg_amproc.dat | 18 ++++++
src/include/catalog/pg_proc.dat | 6 ++
src/test/regress/expected/misc_functions.out | 13 +++++
src/test/regress/sql/misc_functions.sql | 4 ++
17 files changed, 273 insertions(+), 8 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Alexander Korotkov 2024-01-19 15:19:24 pgsql: Reorder actions in ProcArrayApplyRecoveryInfo()
Previous Message Peter Eisentraut 2024-01-19 14:40:21 Re: pgsql: Clean up role created in new subscription test.