前一段时间做spa测试,我们的环境是11.2.0.4.2,在做完前面的分析操作之后,生成spa报告出错。报out of memory。错误日志如下: set trimspool on set trim on set pages 0 set linesize 1000 set long 20000000000 set longchunksize 10000000000 spool spa
前一段时间做spa测试,我们的环境是11.2.0.4.2,在做完前面的分析操作之后,生成spa报告出错。报out of memory。错误日志如下:
set trimspool on set trim on set pages 0 set linesize 1000 set long 20000000000 set longchunksize 10000000000 spool spa_report_elapsed_time.html select dbms_sqlpa.report_analysis_task('spa_test', 'html', 'all','all', top_sql=>300,execution_name=>'compare_elapsed_time') from dual; spool off; error: ora-27163: out of memory ora-06512: at sys.dbms_sqltune_internal, line 8211 ora-06512: at sys.dbms_sqlpa, line 515 ora-06512: at line 1
出现这种内部的问题,只好抱着在mos上搜一搜的态度。同时我也开了sr。很快sr就回复了,同时我也搜到了一篇文档叫xml parser fails with ora-27163 (out of memory) (文档 id 1599434.1)。sr回复的方法和我搜索到的解决办法都是一样的,需要设置event 31156。这个可以直接在session级别进行设置,设置完成之后,再次生成spa报告没有报错。
alter session set events '31156 trace name context forever, level 0x400';
很奇怪的一点是,文档说11.2.0.3存在这个问题,但是11.2.0.4已经不存在这个问题了,但是我确还是遇到了这个问题。同时sr这边指出是bug 12685875 : ora-27163 out of memory when executing dbms_sqlpa.report_analysis_task。这个bug没有写workground。不过我通过上面的事件是可以解决的。
参考文档:xml parser fails with ora-27163 (out of memory) (文档 id 1599434.1)
bug 12685875 : ora-27163 out of memory when executing dbms_sqlpa.report_analysis_task
原文地址:生成spa报告报ora-27163: out of memory, 感谢原作者分享。