When we drop an operator used by other operators as COMMUTATOR or NEGATOR,
pg_dump generates an invalid SQL command for the operators depending on
the dropped one. Is it an unavoidable restriction?
CREATE OPERATOR <<< (
PROCEDURE = text_lt, LEFTARG = text, RIGHTARG = text, COMMUTATOR = >>>
);
CREATE OPERATOR >>> (
PROCEDURE = text_gt, LEFTARG = text, RIGHTARG = text, COMMUTATOR = <<<
);
DROP OPERATOR >>> (text, text);
$ pg_dump
--
-- Name: <<<; Type: OPERATOR; Schema: public; Owner: postgres
--
CREATE OPERATOR <<< (
PROCEDURE = text_lt,
LEFTARG = text,
RIGHTARG = text,
COMMUTATOR = 16395 <== HERE
);
--
Itagaki Takahiro