Dear pgsql-general, I found something strange with DROP TABLE CASCADE.
create role a login; grant all on database mydb to a; create role b inherit role a login; grant all on database mydb to b; (session of role a) psql -U a -d mydb; create schema a; create table a(i1 int); (session of role b) psql -U b -d mydb; create schema b; create table b(c1 char); (session of role a) create table c() inherits(a.a, b.b); (session of role b) drop table a.c; -->> ERROR: permission denied for schema a drop table b cascade NOTICE: drop cascades to table a.c DROP TABLE Is it normal? role b is not owner of table c but role b can drop it with cascade. If I 'grant all on schema a to b', role b still cannot drop table c. Because role b is not owner of table c. Sorry for poor English. Thanks.