vacuum analyze on pg_type fails if bogus entries remain in pg_operator.
Here is a sample script to reproduce the problem.
drop table t1;
create table t1(i int);
drop function foo(t1,t1);
create function foo(t1,t1) returns bool as 'select true' language 'sql';
create operator = (
leftarg = t1,
rightarg = t1,
commutator = =,
procedure = foo
);
drop table t1;
vacuum analyze;
if (typeInheritsFrom(inputTypeId, targetTypeId))
continue;
+ /* don't choke on references to no-longer-existing types */
+ if (!typeidIsValid(inputTypeId))
+ return false;
+ if (!typeidIsValid(targetTypeId))
+ return false;
+
/*
* Else, try for explicit conversion using functions: look for a
* single-argument function named with the target type name and