On Wed, Sep 29, 2010 at 11:56 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> I'm not sure that fixing this case is worth the amount of work it'd
> take. How often do you drop just one member of a commutator pair?
I found the issue when an user tries to write a "safe" installer
script under "DROP before CREATE" coding rule:
1. DROP OPERATOR IF EXISTS <<< ... ;2. CREATE OPERATOR <<< (... COMMUTATOR >>>);3. DROP OPERATOR IF EXISTS >>> ... ;4.
CREATEOPERATOR >>> (... COMMUTATOR <<<);
3 drops catalog-only >>> added at 2, and 4 adds a operator that
has a different oid from <<<'s commutator. The operator <<<
becomes broken state in system catalog.
Anyway, it must be a rare case, and we can just avoid the usage.
--
Itagaki Takahiro