DataPump Import Results In ORA-39001 Invalid Argument Value ORA-1775 Looping Chain Of Synonyms
APPLIES TO:
Oracle Database - Enterprise Edition - Version 10.2.0.2 and later
SYMPTOMS:
When running DataPump import (impdp) the following errors occur:
ORA-39001: invalid argument value
ORA-01775: looping chain of synonyms
CAUSE:
Apparently, the SYS_IMPORT_SCHEMA_01 table is a master table being created during schema impdp. If the impdp is carried out normally then this table would be dropped automatically. In case there is an abnormal termination of the impdp then, the table might still remain.
Diagnose the issue by running the following trace:
Diagnose the issue by running the following trace:
SQL> connect / as sysdba
SQL> alter system set events '1775 trace name ERRORSTACK level 3';
Redo the import and reproduce the error. The trace file should be in the USER_DUMP_DEST directory. Then set the event off with:
SQL> alter system set events '1775 trace name errorstack off';
The trace file will show something like the following:
ksedmp: internal or fatal error
ORA-01775: looping chain of synonyms
Current SQL statement for this session:
SELECT COUNT(*) FROM SYS_IMPORT_SCHEMA_01
call stack:
ksedst ksedmp ksddoa ksdpcg ksdpec ksfpec gesev kgesec0 qcuErroer erroer kkmpfcbk qcsprfro qcsprfro_tree qcsprfro_tree qcspafq qcspqb kkmdrv opiSem opiDeferredSem opitca kksFullTypeCheck rpiswu2 kksLoadChild kxsGetRuntimeLock 810 kksfbc kkspsc0 kksParseCursor opiosq0 opipls opiodr rpidrus skgmstack rpidru rpiswu2 rpidrv psddr0 psdnal pevm_EXIM pfrinstr_EXIM pfrrun_no_tool pfrrun plsql_run peicnt kkxexe opiexe kpoal8 opiodr ttcpip opitsk opiino opiodr opidrv sou2o opimai_real main start
Additionally, running this query shows that a public synonym (not created by DataPump) still exists with the name "SYS_IMPORT_SCHEMA_01".
SQL> select owner, object_name, object_type, status from dba_objects where object_name like '%SYS_IMPORT_SCHEMA_01%';
OWNER OBJECT_NAME OBJECT_TYPE STATUS
--------------- ---------------------- ---------------- -------
PUBLIC SYS_IMPORT_SCHEMA_01 SYNONYM VALID
SOLUTION:
Dropping the synonym SYS_IMPORT_SCHEMA_01 should resolve this issue.
connect / as sysdba
drop public synonym sys_import_schema_01;