Petr Jelinek <p...@2ndquadrant.com> writes:
> But the problem with the extension persists, I will try to dig more to 
> find what is the real cause.

Hm ... I reproduced the problem here.  I can't see anything that looks
wrong about the pg_depend entries:

                  obj                   |                          ref          
                | deptype 
----------------------------------------+-------------------------------------------------------+---------
 extension deptestext                   | schema public                         
                | n
 composite type droppabletype1          | type droppabletype1                   
                | i
 type droppabletype1[]                  | type droppabletype1                   
                | i
 type droppabletype1                    | schema public                         
                | n
 type droppabletype1                    | extension deptestext                  
                | e
 table testtable                        | schema public                         
                | n
 table testtable                        | extension deptestext                  
                | e
 table testtable column droppablecol2   | type droppabletype1                   
                | n
 table testtable column droppablecol1   | type droppabletype1                   
                | n
 table testtable column undroppablecol1 | type undroppabletype                  
                | n
 table testtable column undroppablecol2 | type undroppabletype                  
                | n
 type testtable[]                       | type testtable                        
                | i
 type testtable                         | table testtable                       
                | i
 composite type undroppabletype         | type undroppabletype                  
                | i
 type undroppabletype[]                 | type undroppabletype                  
                | i
 type undroppabletype                   | schema public                         
                | n
 type undroppabletype                   | extension deptestext                  
                | e
 toast table pg_toast.pg_toast_162813   | table testtable                       
                | i
 type pg_toast.pg_toast_162813          | toast table pg_toast.pg_toast_162813  
                | i
 index pg_toast.pg_toast_162813_index   | toast table pg_toast.pg_toast_162813 
column chunk_id  | a
 index pg_toast.pg_toast_162813_index   | toast table pg_toast.pg_toast_162813 
column chunk_seq | a
(21 rows)

but sure enough:

d1=# drop extension deptestext;
ERROR:  cannot drop extension deptestext because other objects depend on it
DETAIL:  table testtable column undroppablecol2 depends on type undroppabletype
table testtable column undroppablecol1 depends on type undroppabletype
HINT:  Use DROP ... CASCADE to drop the dependent objects too.

I suspect this is actually a bug in the dependency search logic in DROP.
Don't have the energy to chase it right now though.

                        regards, tom lane


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to