On Sat, Jan 22, 2011 at 9:50 PM, Tom Lane <t...@sss.pgh.pa.us> wrote: > Robert Haas <robertmh...@gmail.com> writes: >> On Sun, Jan 16, 2011 at 2:28 PM, Tom Lane <t...@sss.pgh.pa.us> wrote: >>> If we were to go with this, I'd be strongly tempted to rearrange all >>> four of the messages involved to put the operator or function name >>> at the end, eg >>> >>> function 1 (oidvector[], oidvector[]) of operator family array_ops for >>> access method gin: btoidvectorcmp(oidvector,oidvector) > >> I kind of wonder if it wouldn't be even better to just *delete* that >> from the thing altogether and write: > >> function 1 (oidvector[], oidvector[]) of operator family array_ops for >> access method gin > >> We're trying to represent the pg_amproc entry here, and including a >> bunch of details of the pg_proc entry to which it happens to point >> seems almost better to be confusing the issue. > > Yeah, that occurred to me too. However, the CREATE OPERATOR CLASS > syntax doesn't really draw a distinction between the referenced > function/operator and its reference in the opclass, and I'm not sure > users do either.
Well, I think from a user perspective the operator class machinery is approximately clear as mud, but the CREATE OPERATOR CLASS syntax surely seems to draw a distinction. It seems pretty clear we're mapping a function support number, with optional types, onto a pre-existing function. > So I don't want to give up the details of the function > or operator. But sticking them at the end after a colon might make it > clearer that the func/operator is referenced by the amproc or amop > entry, but is not the same thing. That seems like an improvement over the status quo, so do you want to go ahead and do that? -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers