ORA-39014

今天在导出数据库时,遇到ORA-39014错误,查Metalink找到如下文章,确认可用,分享给没有账号的朋友。

Applies to:

Oracle Server - Enterprise Edition - Version: 10.2.0.3.0
This problem can occur on any platform.

Symptoms

While attempting to perform. an export using Data Pump, the following errors are encountered:

ORA-39014: One or more workers have prematurely exited.
ORA-39029: worker 1 with process name "DW01" prematurely terminated
ORA-31672: Worker process DW01 died unexpectedly.

The alert log shows a core dump:

ORA-07445: exception encountered: core dump [ACCESS_VIOLATION] [_evaopn2+578]

When reviewing the trace file the query and stack dump seen is similar to the following:

Current SQL statement for this session:
SELECT /*+rule*/ SYS_XMLGEN(VALUE(KU$), XMLFORMAT.createFormat2('PACKAGE_BODY_T', '7')), KU$.OBJ_NUM ,KU$.SCHEMA_OBJ.NAME ,KU$.SCHEMA_OBJ.NAME ,'PACKAGE_BODY' ,KU$.SCHEMA_OBJ.OWNER_NAME FROM SYS.KU$_EXP_PKG_BODY_VIEW KU$ WHERE KU$.BASE_OBJ_NUM IN (SELECT * FROM TABLE(DBMS_METADATA.FETCH_OBJNUMS(200001)))
----- PL/SQL Call Stack -----
object line object
handle number name
3A94E9B8 1313 package body SYS.DBMS_METADATA
3A94E9B8 1583 package body SYS.DBMS_METADATA
3A94E9B8 1891 package body SYS.DBMS_METADATA
3A94E9B8 4224 package body SYS.DBMS_METADATA
35BDE86C 2006 package body SYS.KUPW$WORKER
35BDE86C 6886 package body SYS.KUPW$WORKER
35BDE86C 1260 package body SYS.KUPW$WORKER
30A41988 2 anonymous block
----- Call Stack Trace -----
evaopn2 evaopn2 evaopn2 PGOSF372__opifcr 3939 PGOSF405__qervwRo wProcedure qersoFetch qervwFetch kpofrws opifch2 opifch opipls opiodr rpidrus rpidru rpiswu2 rpidrv psddr0 psdnal pevm_BFTCHC pfrinstr_BFTCHC pfrrun_no_tool pfrrun plsql_run peicnt kkxexe opiexe kpoal8 opiodr kpoodr xupirtrc upirtrc kpurcsc kpuexecv8 kpuexec OCIStmtExecute kupprdp VInfreq__opirip opidrv sou2o opimai_real opimai BackgroundThreadSt art@4 77E64826

Cause

This is Bug 5879865. It is fixed in the 11g release.

The problem is due to the query that uses an EXISTS sub-query involving a non-mergeable view causes the core dump.

Solution

1. When available, download Patch 5879865 to resolve this issue.
Note that this patch was not available at the time of writing this article ({JAN 2008}).

2. In the meantime, please use one of the following as a workaround:
  • set both of the following in the init/spfile
    • "_complex_view_merging" = false
    • event="38066 trace name context forever, level 1" or level 2
OR
  • set "_optimizer_cost_based_transformation"=off


Any of these workarounds can be done at the system level or set in the init or spfile file.


EXAMPLE:
===============

AT SYSTEM LEVEL:

SQL> alter system set events '38066 trace name context forever, level 2';
SQL> alter system set "_complex_view_merging" = false;
SQL> alter system set "_optimizer_cost_based_transformation"=off

IN THE INIT.ORA:
event="38066 trace name context forever, level 2"
_complex_view_merging=false
_optimizer_cost_based_transformation=off

IN THE SPFILE (requires restart of instance):
SQL> alter system set events '38066 trace name context forever, level 2' scope=spfile;
SQL> alter system set "_complex_view_merging" = false scope=spfile;
SQL> alter system set "_optimizer_cost_based_transformation"=off scope=spfile;

3. Flush the shared pool or restart the database.

SQL>alter system flush shared_pool;

4. Perform. the Data Pump export again.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/263455/viewspace-757878/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/263455/viewspace-757878/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值