Re: BUG #16569: Document "59.2. Built-in Operator Classes" have a clerical error
| От | Tomas Vondra |
|---|---|
| Тема | Re: BUG #16569: Document "59.2. Built-in Operator Classes" have a clerical error |
| Дата | |
| Msg-id | 20200804171148.l3ouk6z76yblbrv6@development обсуждение исходный текст |
| Ответ на | BUG #16569: Document "59.2. Built-in Operator Classes" have a clerical error (PG Bug reporting form <noreply@postgresql.org>) |
| Список | pgsql-bugs |
On Mon, Aug 03, 2020 at 03:28:27AM +0000, PG Bug reporting form wrote:
>The following bug has been logged on the website:
>
>Bug reference: 16569
>Logged by: osdba
>Email address: mailtch@163.com
>PostgreSQL version: 9.5.0
>Operating system: all
>Description:
>
>In Document "Table 59-1. Built-in GiST Operator Classes":
>
>"range_ops any range type && &> &< >> << <@ -|- = @> @>",
>
> double "@> @>", I think should be "<@ @>" .
>
>all version document have same clerical error.
>
I agree this is rather confusing, but I don't think it's a bug ...
I'd bet the reason why we have '@> @>' and not '<@ @>' is that those for
different argument types. GiST range_ops has
@>(anyrange,anyrange)
<@(anyrange,anyrange)
@>(anyrange,anyelement)
But we only show the first and third one, because the <@ is commutator
for the first one.
We have a similar thing for point_ops where we have <@ three times, but
those are for different combinations of point, box and circle types.
It's confusing, though. I wonder if we should do one or more of these
changes:
(1) include accepted argument types
(2) only list distinct oprname (so not printing <@ twice)
(3) include commutators (so printing both <@ and @>)
(4) link to https://www.postgresql.org/docs/12/functions-range.html
which already has alll these additional details
regards
--
Tomas Vondra http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
В списке pgsql-bugs по дате отправления: