Archive for the ‘Looping chain of synonyms’ Category
ORA-01775: looping chain of synonyms
March 12, 2011
1 comment
Cause: Through a series of CREATE synonym statements, a synonym was defined that referred to itself. |
Action: Change one synonym definition so that it applies to a base table or view and retry the operation. |
For example, the following definitions are circular: CREATE SYNONYM s1 for s2;
CREATE SYNONYM s2 for s3
CREATE SYNONYM s3 for s1
or
CREATE SYNONYM s4 for s4
Check your synonyms with:
select * from all_synonyms where synonym_name = ‘name’ or table_name = ‘name’;
SELECT table_owner, table_name, db_link
FROM dba_synonyms
WHERE owner = 'PUBLIC'
AND synonym_name = <<synonym name>>
select owner, synonym_name, connect_by_iscycle CYCLE from dba_synonyms where connect_by_iscycle > 0 connect by nocycle prior table_name = synonym_name and prior table_owner = owner union select 'PUBLIC', synonym_name, 1 from dba_synonyms where owner = 'PUBLIC' and table_name = synonym_name and (table_name, table_owner) not in (select object_name, owner from dba_objects where object_type != 'SYNONYM')
Categories: Error Solving, Looping chain of synonyms