You are currently reviewing an older revision of this page.
Launching inspection form MAI3808 results in error message ORA-04063: package body "atlas.mai" has errors.Form used daily to log safety defects in exor "Maintenance Manager, Inspections, Inspection" . Now it will not allow us to complete/log a defect against an inspection. Same might happen to MAI3660 Budgets form.
Recompiling module MAI gives:
Errors for PACKAGE BODY MAI:3354/5 PL/SQL: SQL Statement ignored3354/12 PL/SQL: ORA-01775: looping chain of synonyms
Cause was a missing table HHINV_LOAD_3 that needed re-creating in highways owner account, without that, package doesn't compile.
The reason why HHINV_LOAD_3 is missing might be the Inventory Loader process that includes a drop and recreate of that table. Sometimes a loading error occurs after the drop and before the recreate, leaving the system without an HHINV_LOAD_3 table at all.
Please contact Bentley Support to discuss.
Relevant Information
Recompiling package resulted in the following from sqlplus as atlas
alter package mai compile body;
sho errors
Errors for PACKAGE BODY MAI:3354/5 PL/SQL: SQL Statement ignored3354/12 PL/SQL: ORA-01775: looping chain of synonymsSQL> spool off
1 select * 2 from dba_synonyms ds 3 where ds.TABLE_OWNER = upper('ATLAS') 4 and not exists (select 'x' 5 from all_objects ao 6 where ao.OWNER = ds.TABLE_OWNER 7 and ao.object_NAME = ds.TABLE_NAME) 8* order by ownerSQL> /
a number of rows appear, but this is the one we need to know about
synonym exists , table doesnt.
OWNER SYNONYM_NAME TABLE_OWNER TABLE_NAMEPUBLIC HHINV_LOAD_3 ATLAS HHINV_LOAD_3
SQL> select table_name from user_tables 2 where table_name like 'HHINV%';
TABLE_NAME------------------------------HHINV_HOLD_1HHINV_ITEM_ERR_1HHINV_ITEM_ERR_2HHINV_ITEM_ERR_3HHINV_LOAD_1HHINV_LOAD_2HHINV_LOAD_3_XHHINV_ODL_LOGHHINV_RUN_LOGHHINV_SECT_LOG
10 rows selected.
SQL> desc hhinv_load_3SP2-0749: Cannot resolve circular path of synonym "hhinv_load_3"
synonym exists but table doesnt.
1 select a.owner,b.created from all_objects a,dba_users b 2 where a.object_type = 'TABLE' 3 and a.object_name = 'HHINV_LOAD_3' 4 and a.owner = b.username 5* order by b.created descSQL> /
OWNER CREATED------------------------------ ---------CPICKUP 22-AUG-12SAJ 10-MAY-12NAINA 10-MAY-12GANDY 14-FEB-12NCAMP 08-FEB-12
using sqldeveloper got customer to get a create script command from CPICKUP user who had. Ran in as atlas user in atasprd.
Then recompiled all invalid objects and MAI recompiled ok. ran compile_invalid_objs.sql script.
Product TechNotes and FAQs
Bentley Technical Support KnowledgeBase
Bentley LEARN Server
Bentley's Technical Support Group requests that you please confine any comments you have on this Wiki entry to this "Comments or Corrections?" section. THANK YOU!