shunzi 发表于 2015-1-31 20:54:10

EXPDP 导出报 ORA-39126: Worker unexpected fatal error in KUPW$WORKER.FETCH...

OS:redhat 5.4
Oracle:11.2.0.3.0

导出语句如下:expdp expbak/xxxxxx  directory=expbak  SCHEMAS=USERA,USERB,USERC,USERD dumpfile=test_%U.dmp logfile=test.log parallel=4

表的数据都倒出来了,到统计信息的时候报错如下:
ORA-39126: Worker unexpected fatal error in KUPW$WORKER.FETCH_XML_OBJECTS []
ORA-31642: the following SQL statement fails:
BEGIN "SYS"."DBMS_SCHED_EXPORT_CALLOUTS".SCHEMA_CALLOUT(:1,1,1,'11.02.00.00.00'); END;
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 86
ORA-06512: at "SYS.DBMS_METADATA", line 1749
ORA-01422: exact fetch returns more than requested number of rows

ORA-06512: at "SYS.DBMS_SYS_ERROR", line 86
ORA-06512: at "SYS.KUPW$WORKER", line 8996

----- PL/SQL Call Stack -----
  object      line  object
  handle    number  name
0x15e75cda8     20462  package body SYS.KUPW$WORKER
0x15e75cda8      9028  package body SYS.KUPW$WORKER
0x15e75cda8     10935  package body SYS.KUPW$WORKER
0x15e75cda8      2728  package body SYS.KUPW$WORKER
0x15e75cda8      9697  package body SYS.KUPW$WORKER
0x15e75cda8      1775  package body SYS.KUPW$WORKER
0x15e156b78         2  anonymous block

查MOS上信息,文档 ID 1531789.1  文档 ID 14215851.8相识但不全是的,想请教下这个问题怎么解决?是否非要升级数据库到11.2.0.4版本?谢谢

Liu Maclean(刘相兵 发表于 2015-1-31 21:02:52

odm finding:

DataPump Export Fails With Errors ORA-39125 ORA-31642 ORA-1422 (Doc ID 790988.1)        To BottomTo Bottom       

In this Document
Symptoms
Cause
Solution
APPLIES TO:

Oracle Database - Enterprise Edition - Version 10.2.0.1 and later
Information in this document applies to any platform.
***Checked for relevance on 23-Apr-2013***
SYMPTOMS

DataPump export (EXPDP) fails with the following errors:

#> expdp system/passworde schemas=scott content=metadata_only dumpfile=scott.dmp


ORA-39125: Worker unexpected fatal error in KUPW$WORKER.UNLOAD_METADATA while calling DBMS_METADATA.FETCH_XML_CLOB []
ORA-31642: the following SQL statement fails:
BEGIN "SYS"."DBMS_SCHED_EXPORT_CALLOUTS".SCHEMA_CALLOUT(:1,1,1,'10.02.00.03.00') ; END;
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 86
ORA-06512: at "SYS.DBMS_METADATA", line 907
ORA-01422: exact fetch returns more than requested number of rows
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
ORA-06512: at "SYS.KUPW$WORKER", line 6228
----- PL/SQL Call Stack -----
object line object
handle number name
0x239ced9c 14916 package body SYS.KUPW$WORKER
0x239ced9c 6293 package body SYS.KUPW$WORKER
0x239ced9c 2339 package body SYS.KUPW$WORKER
0x239ced9c 6854 package body SYS.KUPW$WORKER
0x239ced9c 1259 package body SYS.KUPW$WORKER
0x308382a8 2 anonymous block
CAUSE

The problem is generated because DUAL table has more than one row.

To confirm the duplicate entries in DUAL table, an errorstack for error ORA-1422 was generated:

connect /as sysdba
alter system set events '1422 trace name ERRORSTACK level 3';
exit

Then re-start the export. A trace file for DataPump Worker process (DW) was generated in background_dump_dest directory:

ksedmp: internal or fatal error
ORA-01422: exact fetch returns more than requested number of rows
Current SQL statement for this session:
select dummy from dual where ora_dict_obj_type = :"SYS_B_0"

Please verify with:

connect /as sysdba
-- set the event off
alter system set events '1422 trace name ERRORSTACK off';
create table dual_01 as select * from dual;
select * from dual_01;

D
-
X
X
SOLUTION

1. Delete one row from DUAL table and drop the dummy table DUAL_01;

connect / as sysdba
delete from dual where dummy = 'X' and rownum=1;
drop table dual_01 purge;

2. Run the DataPump export again:

$ expdp system/password schemas=scott content=metadata_only dumpfile=scott.dmp


...
Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
Processing object type SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
Master table "SYSTEM"."SYS_EXPORT_SCHEMA_03" successfully loaded/unloaded
******************************************************************************
Dump file set for SYSTEM.SYS_EXPORT_SCHEMA_03 is:
/tmp/scott.dmp
Job "SYSTEM"."SYS_EXPORT_SCHEMA_03" successfully completed
       
       
Document Details

Rate this documentEmail link to this documentOpen document in new windowPrintable Page
       
Type:
Status:
Last Major Update:
Last Update:
PROBLEM
PUBLISHED
23-Apr-2013
23-Apr-2013

                  

       
Related Products

       
Oracle Database - Enterprise Edition
                  
       
Information Centers

                       
Index of Oracle Database Information Centers

Information Center: Overview of Database Security Products

Information Center: Overview Database Server/Client Installation and Upgrade/Migration

                  
       
Document References

                No References available for this document.       
                  
       
Recently Viewed

        Datapump Export Fails With Error ORA-06508: PL/SQL: could not find program unit being called: "SYS.DBMS_CUBE_EXP"        

        glibc vulnerability (CVE-2015-0235) patch availability for Oracle Exadata Database Machine        

        Troubleshooting Assistant: Troubleshooting Performance Issues        

        List of Java Objects Introduced by INITJVM.SQL in Version 11.1.x        

        How does the GRANT statement work?        

Show More
                  

Liu Maclean(刘相兵 发表于 2015-1-31 21:03:09

给出如下信息的返回:

connect /as sysdba
-- set the event off
alter system set events '1422 trace name ERRORSTACK off';
create table dual_01 as select * from dual;
select * from dual_01;

shunzi 发表于 2015-1-31 21:08:42

SQL> conn / as sysdba
Connected.
SQL> -- set the event off
SQL> alter system set events '1422 trace name ERRORSTACK off';

System altered.

SQL> create table dual_01 as select * from dual;

Table created.

SQL> select * from dual_01;

D
-
X

shunzi 发表于 2015-1-31 21:14:58

这个是trc信息
页: [1]
查看完整版本: EXPDP 导出报 ORA-39126: Worker unexpected fatal error in KUPW$WORKER.FETCH...