Hi!
Creating an extension in a schema and then dropping that schema
apparently doesn't clean up the extension's types:
db=# CREATE SCHEMA foo;
db=# CREATE EXTENSION cube WITH SCHEMA foo;
db=# DROP SCHEMA foo CASCADE;
NOTICE: drop cascades to 6 other objects
DETAIL: drop cascades to operator foo.<>(foo.cube,foo.cube)
drop cascades to operator foo.>(foo.cube,foo.cube)
drop cascades to operator foo.<=(foo.cube,foo.cube)
drop cascades to operator foo.>=(foo.cube,foo.cube)
drop cascades to operator foo.<@(foo.cube,foo.cube)
drop cascades to operator foo.~(foo.cube,foo.cube)
It leaves around pg_type entry with typnamespace that doesn't exist in
pg_namespace:
db=# select * from pg_type left join pg_namespace ns on
(typnamespace=ns.oid) where ns.oid is null;
* Record 1
typname _cube
typnamespace 17074
typowner 10
typlen -1
...
Also breaks pg_dump: "pg_dump: schema with OID 17074 does not exist"
Regards,
Marti