解决EBS编译APPS对象出现错误(原创)
今天解决一个AP发票验证的性能问题,从metalink上找了补丁,在测试环境上测试一下,问题就接踵而来.
1,在apply patch的时候,出现如下提示:
The following Oracle Reports objects did not generate successfully:
ap reports/US APXAPRVL.rdf
感觉这个问题影响不大,就选择"Y"继续打完补丁,类似这种问题,可以查看一下后台日志,看看有没有什么具体的原因造成的或看看这个报表的代码,再不行就从metalink上去碰运气了,因为Oracle的打patch而导致另外的问题出现,相信大家都遇到过 :).打完补丁后,看日志没有什么错误提示,凭着直觉去看了一下非法对象,发现问题就出现在这里,一下AP模块有几个package是INVALID的,这几个package和前面提到的报表有一定的关系,导致编译报表出现错误,那就用adadmin--Compile APPS schema, 然后就出现如下错误提示:
sqlplus -s APPS/***** @/u02/TEST/app/appl/ad/12.0.0/sql/adutlrcmp.sql APPLSYS ***** APPS ***** ***** 0 0 NONE FALSE
An error occurred while running a SQL*Plus script.
Continue as if it were successful [No] :
一看日志,天呀,错误信息一堆,看着错误以为致命的大问题:
********************************adadmin.log*************************
sqlplus -s APPS/***** @/u02/TEST/app/appl/ad/12.0.0/sql/adutlrcmp.sql APPLSYS ***** APPS ***** ***** 0 0 NONE FALSE
Arguments are:
AOL_schema = APPLSYS, AOL_password = *****,
Schema_to_compile = APPS, Schema_to_compile_pw = *****,
SYSTEM_password = *****, Total_workers = 0, Logical_worker_num = 0
Object_type_to_not_compile = NONE
Use_stored_dependencies = FALSE
Connected.
Running utl_recomp.recomp_parallel(0), if it exists
OWNER NUM_INVALID
------------------------------ -----------
APPS 15
Elapsed: 00:00:00.12
PL/SQL procedure successfully completed.
Elapsed: 00:00:00.02
STATUS_MESSAGE
------------------------------------------------------------------------------
Running UTL_RECOMP.RECOMP_PARALLEL...
declare
*
ERROR at line 1:
ORA-03113: end-of-file on communication channel
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
SP2-0359: memory exhausted
An error occurred while running a SQL*Plus script.
Continue as if it were successful [No] : n
AD Administration error:
Error running adutlrcmp.sql in adprdcAdUtilrcmp()
An error occurred while compiling invalids using the SYS.UTL_RECOMP() package.
********************************alert.log********************************************************
CJQ0 started with pid=16, OS id=17554
Fri Mar 18 17:34:46 2011
ALTER SYSTEM SET max_dump_file_size='2000M' SCOPE=MEMORY;
Fri Mar 18 17:34:54 2011
Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x0] [PC:0x7DF6702, ptkin()+350]
Errors in file
/u02/TEST/db/testdb/11.1.0/admin/TEST_erpdemo/diag/rdbms/test/TEST/trace/TEST_ora_17586.trc (incident=53020):
ORA-07445: exception encountered: core dump [ptkin()+350] [SIGSEGV] [ADDR:0x0] [PC:0x7DF6702] [Address not mapped to object] []
Incident details in:
/u02/TEST/db/testdb/11.1.0/admin/TEST_erpdemo/diag/rdbms/test/TEST/incident/incdir_53020/TEST_ora_17586_i53020.trc
Fri Mar 18 17:34:57 2011
Trace dumping is performing id=[cdmp_20110318173457]
Fri Mar 18 17:34:57 2011
Sweep Incident[53020]: completed
**************************************************************************************
对于ORA-07445错误,听Oracle的工程师说一半都是OS系统问题导致的? 我个人感觉不是这个方面造成的, 就只能看dump文件了(TEST_ora_17586_i53020.trc),在一目十行的浏览中,一个package划入眼中,怎么这么熟悉,原来这个包也在刚才查出的非法对象中,难道系统是在编译这个包的时候,出现问题,卡住了? 不用EBS的标准工具,手动去编译了一下APPS.FUN_VENDOR_PVT_PKG.
Connected to Oracle Database 11g Enterprise Edition Release 11.1.0.7.0
Connected as apps
SQL> ALTER PACKAGE APPS.FUN_VENDOR_PVT_PKG COMPILE;
Package altered
SQL> ALTER PACKAGE APPS.FUN_VENDOR_PVT_PKG COMPILE BODY;
Package body altered
SQL>
然后再去adadmin, 问题解决了.对于这个包到metalink上去找找了,是个bug,后面会有参考文档.
see
1.R12:Validating Invoices Performance Takes Very Long Time [ID 1141833.1]
2.R12: Invalid Object FUN_VENDOR_PVT_PKG Package Body [ID 1295382.1]
3.Package FUN_VENDOR_PVT_PKG is INVALID after R12 upgrade [ID 982428.1]
4.Compile Package APPS.FUN_VENDOR_PVT_PKG Exits With Error ORA-3113 [ID 1276977.1]
<EOF>