pgsql: Remove <@ from contrib/intarray's GiST operator classes.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Remove <@ from contrib/intarray's GiST operator classes.
Date: 2020-08-08 21:26:41
Message-ID: E1k4WMT-0005d6-Op@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Remove <@ from contrib/intarray's GiST operator classes.

Since commit efc77cf5f, an indexed query using <@ has required a
full-index scan, so that it actually performs worse than a plain seqscan
would do. As I noted at the time, we'd be better off to not treat <@ as
being indexable by such indexes at all; and that's what this patch does.

It would have been difficult to remove these opclass members without
dropping the whole opclass before commit 9f9682783 fixed GiST opclass
member dependency rules, but now it's quite simple, so let's do it.

I left the existing support code in place for the time being, with
comments noting it's now unreachable. At some point, perhaps we should
remove that code in favor of throwing an error telling people to upgrade
the extension version.

Discussion: https://postgr.es/m/2176979.1596389859@sss.pgh.pa.us
Discussion: https://postgr.es/m/458.1565114141@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/20e7e1fe316467720d8d062e1a1429f798fc31bf

Modified Files
--------------
contrib/intarray/Makefile | 3 ++-
contrib/intarray/_int_gist.c | 6 ++++++
contrib/intarray/_intbig_gist.c | 6 ++++++
contrib/intarray/intarray--1.3--1.4.sql | 21 +++++++++++++++++++++
contrib/intarray/intarray.control | 2 +-
doc/src/sgml/intarray.sgml | 5 +++--
6 files changed, 39 insertions(+), 4 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2020-08-09 00:02:17 pgsql: Release notes for 12.4, 11.9, 10.14, 9.6.19, 9.5.23.
Previous Message Peter Geoghegan 2020-08-08 18:12:55 pgsql: Teach amcheck to verify sibling links in all cases.