Problem

SQL> drop package "DBA"."pack_dev";
 drop package "DBA"."pack_dev"
 *
 ERROR na řádku 1:
 ORA-04043: objekt SYS_PLSQL_FE118D94_31_1 neexistuje

Analyse

SQL> col owner format a15
 col object_name format a15
 col object_type format a15
 select owner, object_name, object_type, status
 from dba_objects
 where object_name like 'pack_dev'
 order by object_name;

OWNER OBJECT_NAME OBJECT_TYPE STATUS
 --------------- --------------- --------------- ---------------------
 DBA_TEST pack_dev PACKAGE BODY INVALID
 DBA_TEST pack_dev PACKAGE VALID
 DBA pack_dev PACKAGE INVALID
 DBA2 pack_dev PACKAGE VALID
 DBA2 pack_dev PACKAGE BODY INVALID

select owner, object_name, object_type
 from dba_objects
 where object_name like 'SYS_PLSQL@_FE118D94@_%' escape '@'
 order by object_name;
 OWNER OBJECT_NAME OBJECT_TYPE
 --------------- ------------------------------ ---------------
 DBA SYS_PLSQL_FE118D94_DUMMY_1 TYPE
 DBA2 SYS_PLSQL_FE118D94_DUMMY_1 TYPE
 DBA_TEST SYS_PLSQL_FE118D94_DUMMY_1 TYPE
 DBA2 SYS_PLSQL_FE118D94_31_1 TYPE
 SYS SYS_PLSQL_FE118D94_31_1 TYPE
 DBA_TEST SYS_PLSQL_FE118D94_41_1 TYPE
 DBA SYS_PLSQL_FE118D94_41_1 TYPE

MOS
Error „ORA-04043: Object SYS_PLSQL_XXXXXXX Does Not Exist“ while trying To Recompile/DROP a Package (Doc ID 1683819.1)
Cannot drop an existing objects with ora-4043 error (Doc ID 2250436.1)
Bug 18097476 – ORA-4043 dropping package when same package exists in another user – superseded (Doc ID 18097476.8)
Patch 23273686: DATABASE PROACTIVE BUNDLE PATCH 12.1.0.2.160719 (JUL2016)

Solution

SQL> drop type "DBA".SYS_PLSQL_FE118D94_41_1 force;
 Typ zrušen.

SQL> drop type "SYS".SYS_PLSQL_FE118D94_31_1 force;
 Typ zrušen.

SQL> drop type "DBA2".SYS_PLSQL_FE118D94_31_1 force;
 Typ zrušen.

SQL> drop type "DBA_TEST".SYS_PLSQL_FE118D94_41_1 force;
 Typ zrušen.

select owner, object_name, object_type
 from dba_objects
 where object_name like 'SYS_PLSQL@_FE118D94@_%' escape '@'
 order by object_name;

OWNER OBJECT_NAME OBJECT_TYPE
 --------------- ------------------------------ ---------------
 DBA_TEST SYS_PLSQL_FE118D94_DUMMY_1 TYPE
 DBA2 SYS_PLSQL_FE118D94_DUMMY_1 TYPE
 DBA SYS_PLSQL_FE118D94_DUMMY_1 TYPE

SQL> drop package "DBA"."pack_dev";
Balík zrušen.

OWNER OBJECT_NAME OBJECT_TYPE STATUS
 --------------- --------------- --------------- ---------------------
 DBA_TEST pack_dev PACKAGE BODY INVALID
 DBA2 pack_dev PACKAGE VALID
 DBA2 pack_dev PACKAGE BODY INVALID
 DBA_TEST pack_dev PACKAGE VALID

 



Komentáře