From: | "Christopher Kings-Lynne" <chriskl(at)familyhealth(dot)com(dot)au> |
---|---|
To: | "Pgsql-Hackers" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Bug in CREATE OPERATOR |
Date: | 2000-12-20 08:04:17 |
Message-ID: | NEBBIOAJBMEENKACLNPCIELICCAA.chriskl@familyhealth.com.au |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
As part of our development, one of our programmers created a new database
type, plus operators and functions to go with it. One of the things he did
was this:
CREATE OPERATOR testbit (
leftarg = bitset,
rightarg = int4,
procedure = testbit,
commutator = testbit
);
Notice that this is an ILLEGAL type - the name of the type (from docs) must
only contain these characters:
+ - * / < > = ~ ! @ # % ^ & | ` ? $
However, PostgreSQL 7.0.3 went right ahead and created the operator anyway!!
Now we have a big problem, as the DROP OPERATOR command cannot delete the
illegally named operator.
eg:
usa=# drop operator testbit (bitset, int4);
ERROR: parser: parse error at or near "testbit "
usa=# drop operator 'testbit ' (bitset, int4);
ERROR: parser: parse error at or near "'"
usa=# drop operator "testbit " (bitset, int4);
ERROR: parser: parse error at or near """
We can't delete it!!! I also assume that it was a bug that it could even be
created in the first place...
Chris
--
Christopher Kings-Lynne
Family Health Network (ACN 089 639 243)
From | Date | Subject | |
---|---|---|---|
Next Message | Tatsuo Ishii | 2000-12-20 08:37:44 | sequence numbering on mails |
Previous Message | Karel Zak | 2000-12-20 07:56:43 | PL/Python (was: Re: [GENERAL] Re: [HACKERS] Trigger) |