Re: BUG #19000: gist index returns inconsistent result with gist_inet_ops - Mailing list pgsql-bugs

From Tom Lane
Subject Re: BUG #19000: gist index returns inconsistent result with gist_inet_ops
Date
Msg-id 2107725.1753985855@sss.pgh.pa.us
Whole thread Raw
In response to Re: BUG #19000: gist index returns inconsistent result with gist_inet_ops  (Peter Eisentraut <peter@eisentraut.org>)
Responses Re: BUG #19000: gist index returns inconsistent result with gist_inet_ops
List pgsql-bugs
Peter Eisentraut <peter@eisentraut.org> writes:
> On 28.07.25 04:23, Richard Guo wrote:
>> It seems that with gist_inet_ops the index's opfamily does not support
>> the '<<' operator correctly.
>> With inet_ops, the query works correctly.

> This can be reproduced even in PG17.
> My mind is a bit boggled about what the actual meaning of the > operator
> should be in this case, but in any case it seems there might be a
> pre-existing discrepancy in the btree_gist module.

We've known about this for, um, decades: btree_gist's support for
inet/cidr is fundamentally broken [1][2].  It's still there
only because nobody's been able to think of a way of removing it
without causing pain for anyone who has indexes like that.
But maybe we should just accept that it's going to cause pain
and remove it.

Actually ... I vaguely recall that we have, or once had, a
kluge in CREATE INDEX that would silently substitute another
opclass name for a user-specified opclass that wasn't there
anymore.  That would help with dump/restore scenarios, although
it'd be pretty disastrous in pg_upgrade.  But we could add a
preflight check to pg_upgrade that looked for gist_inet_ops
indexes and told users to replace them with network_ops indexes.
So maybe there is a way forward?

            regards, tom lane

[1] https://www.postgresql.org/message-id/flat/201010112055.o9BKtZf7011251%40wwwmaster.postgresql.org
[2] https://www.postgresql.org/message-id/flat/7891efc1-8378-2cf2-617b-4143848ec895%40proxel.se



pgsql-bugs by date:

Previous
From: Masahiko Sawada
Date:
Subject: Re: Use-after-free in reorderbuffer.c for INSERT ON CONFLICT
Next
From: Todd Cook
Date:
Subject: Re: Postgres: Queries are too slow after upgrading to PG17 from PG15