Re: Bogus documentation for bogus geometric operators - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Bogus documentation for bogus geometric operators
Date
Msg-id 235089.1605219393@sss.pgh.pa.us
Whole thread Raw
In response to Re: Bogus documentation for bogus geometric operators  (Pavel Borisov <pashkin.elfe@gmail.com>)
Responses Re: Bogus documentation for bogus geometric operators  (Pavel Borisov <pashkin.elfe@gmail.com>)
List pgsql-hackers
Pavel Borisov <pashkin.elfe@gmail.com> writes:
> [ v4-0001-Deprecate-and-replace-and-operators-for-points.patch ]

I made a cursory pass over this, and two things stood out to me:

1. The patch removes <^ and >^ from func.sgml, which is fine, but
shouldn't there be an addition for the new operators?  (I think
probably this need only be an addition of "point" as a possible
input type for <<| and |>>.)  Actually, as long we're not completely
removing these operators, I'm not sure it's okay to make them completely
undocumented.  Maybe instead of removing, change the text to be
"Deprecated, use the equivalent XXX operator instead."  Or we could
add a footnote similar to what was there for a previous renaming:

    Note

    Before PostgreSQL 8.2, the containment operators @> and <@ were
    respectively called ~ and @. These names are still available, but
    are deprecated and will eventually be removed.

2. I'm a bit queasy about removing these operators from the opclasses.
I'm not sure anyone will thank us for "the operator is still there, so
your query is still accepted, but it runs 1000X slower than before".
It seems like more plausible answers are either "nuke the operators
entirely, force people to change their queries now" or else "support
both old and new names in the opclasses for awhile to come".  In
previous operator renamings we've generally followed the second path,
so that's what I'm inclined to think should happen here.

            regards, tom lane



pgsql-hackers by date:

Previous
From: Jacob Champion
Date:
Subject: Re: Support for NSS as a libpq TLS backend
Next
From: Tom Lane
Date:
Subject: Re: [PATCH] remove deprecated v8.2 containment operators