Why do I get an incorrect error "ORA-01775: looping chain of synonyms", when the base table does not existing? I use Informatica for managing some ETL process that load data into an Oracle 9i Data-warehouse.

Today I got the below error in the Informatica session logs:

Message: Database driver error...
CMN_1022 [DELETE FROM SOME_TABLE 
WHERE PERIOD_NAME = 'OCT-12'

ORA-01775: looping chain of synonyms

Database driver error...
Function Name : executeDirect
SQL Stmt : DELETE FROM SOME_TABLE 
WHERE PERIOD_NAME = 'OCT-12'
Oracle Fatal Error
Database driver error...
Function Name : ExecuteDirect

Oracle Fatal Error
]


Now it was a typographical error, the table name was misspelt. The Oracle error obviously sent us in the wrong direction... So just wanted to understand why this error was show when there was no issue with synonyms.
This happens when you have a "dangling" synonym, because it points to itself.

For example:

SQL&gt; create table blah ( a number );

Table created.

SQL&gt; create public synonym blah for blah;

Synonym created.

SQL&gt; drop table blah;

Table dropped.

SQL&gt; select * from blah;
select * from blah
              *
ERROR at line 1:
ORA-01775: looping chain of synonyms


SQL&gt;