Re: BUG #19000: gist index returns inconsistent result with gist_inet_ops
От | Tom Lane |
---|---|
Тема | Re: BUG #19000: gist index returns inconsistent result with gist_inet_ops |
Дата | |
Msg-id | 2107725.1753985855@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: BUG #19000: gist index returns inconsistent result with gist_inet_ops (Peter Eisentraut <peter@eisentraut.org>) |
Ответы |
Re: BUG #19000: gist index returns inconsistent result with gist_inet_ops
|
Список | 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 по дате отправления: