Add cross-type comparisons to contrib/btree_gin. Extend the infrastructure in btree_gin.c to permit cross-type operators, and add the code to support them for the int2, int4, and int8 opclasses. (To keep this patch digestible, I left the other datatypes for a separate patch.) This improves the usability of btree_gin indexes by allowing them to support the same set of queries that a regular btree index does.
Author: Tom Lane <t...@sss.pgh.pa.us> Reviewed-by: Arseniy Mukhin <arseniy.mukhin....@gmail.com> Discussion: https://postgr.es/m/262624.1738460...@sss.pgh.pa.us Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/e2b64fcef35f70f96fa92db56fbfa9ac2da136c7 Modified Files -------------- contrib/btree_gin/Makefile | 2 +- contrib/btree_gin/btree_gin--1.3--1.4.sql | 63 ++++ contrib/btree_gin/btree_gin.c | 479 +++++++++++++++++++++++++----- contrib/btree_gin/btree_gin.control | 2 +- contrib/btree_gin/expected/int2.out | 190 ++++++++++++ contrib/btree_gin/expected/int4.out | 100 +++++++ contrib/btree_gin/expected/int8.out | 100 +++++++ contrib/btree_gin/meson.build | 1 + contrib/btree_gin/sql/int2.sql | 35 +++ contrib/btree_gin/sql/int4.sql | 18 ++ contrib/btree_gin/sql/int8.sql | 18 ++ doc/src/sgml/gin.sgml | 6 +- src/tools/pgindent/typedefs.list | 2 + 13 files changed, 931 insertions(+), 85 deletions(-)