Oops, please disregard the above copy-paste unwanted sql.
postgres=# create type comptype1 as (elem1 int);
postgres=# create type comptype2 as (elem1 int, elem2 comptype1); postgres=# \d comptype2 Composite type "public.comptype2" Column | Type --------+----------- elem1 | integer elem2 | comptype1
postgres=# drop type comptype1 cascade; NOTICE: drop cascades to composite type comptype2 column elem2 postgres=# \d comptype2 Composite type "public.comptype2" Column | Type --------+--------- elem1 | integer
Shouldn't the drop cascade have deleted comptype2 itself, instead of just deleting the dependent column? Or this is the expected intentional behaviour?