From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Brendan Jurd <direvus(at)gmail(dot)com> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: operator dependency of commutator and negator, redux |
Date: | 2012-12-20 15:52:01 |
Message-ID: | 12166.1356018721@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Brendan Jurd <direvus(at)gmail(dot)com> writes:
> On 20 December 2012 11:51, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> While reconsidering the various not-too-satisfactory fixes we thought of
>> back then, I had a sudden thought. Instead of having a COMMUTATOR or
>> NEGATOR forward reference create a "shell" operator and link to it,
>> why not simply *ignore* such references? Then when the second operator
>> is defined, go ahead and fill in both links?
> Ignore with warning sounds pretty good. So it would go something like this?
> # CREATE OPERATOR < (... COMMUTATOR >);
> WARNING: COMMUTATOR > (foo, foo) undefined, ignoring.
> CREATE OPERATOR
> # CREATE OPERATOR > (... COMMUTATOR <);
> CREATE OPERATOR
I was thinking a NOTICE at most. If it's a WARNING then restoring
perfectly valid pg_dump files will result in lots of scary-looking
chatter. You could make an argument for printing nothing at all,
but that would probably mislead people who'd fat-fingered their
COMMUTATOR entries.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2012-12-20 15:53:32 | Re: Set visibility map bit after HOT prune |
Previous Message | Andres Freund | 2012-12-20 15:35:56 | Re: Parser Cruft in gram.y |