Datapump Export expdp Fails With ORA-600 [unable to load XDB library] (Doc ID 736049.1)

Last updated on NOVEMBER 28, 2016

Applies to:

Oracle Server - Enterprise Edition - Version 10.2.0.1 to 10.2.0.5.0 [Release 10.2]
Information in this document applies to any platform.
*** Checked for relevance on 22-Mar-2012 ***


Symptoms

This article is written specifically for when Data Pump export (EXPDP) fails with the following ORA-00600 error seen in the alert log and also reported from the export log :

ORA-00600: internal error code, arguments: [unable to load XDB library], [], []

It may be that this article will solve for other situations where the error is seen but as the error
is quite general and can be see due to >1 reason there is no guarantee.  If in doubt please
raise a SR to ORACLE Support.

The following symptoms will be seen :-

a) EXPDP session/log will look something like :-

Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options

Starting "xx"."SYS_EXPORT_SCHEMA_01": uuu/********
Estimate in progress using BLOCKS method...
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
Total estimation using BLOCKS method: 11.16 GB
Processing object type SCHEMA_EXPORT/USER
Processing object type SCHEMA_EXPORT/SYSTEM_GRANT
Processing object type SCHEMA_EXPORT/ROLE_GRANT
Processing object type SCHEMA_EXPORT/DEFAULT_ROLE
Processing object type SCHEMA_EXPORT/TABLESPACE_QUOTA
Processing object type SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
Processing object type SCHEMA_EXPORT/SEQUENCE/SEQUENCE
ORA-39014: One or more workers have prematurely exited.
ORA-39029: worker 1 with process name "DW01" prematurely terminated
ORA-31671: Worker process DW01 had an unhandled exception.
ORA-00600: internal error code, arguments: [unable to load XDB library], [], []
ORA-06512: at "SYS.KUPW$WORKER", line 1342
ORA-06512: at line 2

Job "xx"."SYS_EXPORT_SCHEMA_01" stopped due to fatal error at 11:03:15



b) The ORA-00600 trace will contain the SQL :-

SELECT /*+rule*/ SYS_XMLGEN(VALUE(KU$), XMLFORMAT.createFormat2('CLUSTER_T',
'7')), KU$.OBJ_NUM ,KU$.SCHEMA_OBJ.NAME ,KU$.SCHEMA_OBJ.NAME ,'CLUSTER' ,KU$.SCHEMA_OBJ.OWNER_NAME FROM SYS.KU$_CLUSTER_VIEW KU$ WHERE NOT (BITAND (KU$.SCHEMA_OBJ.FLAGS,16)=16) AND KU$.SCHEMA_OBJ.OWNER_NAME=:SCHEMA1 AND NOT EXISTS (SELECT 1 FROM SYS.KU$NOEXP_TAB A WHERE A.OBJ_TYPE='CLUSTER' AND A.NAME= KU$.SCHEMA_OBJ.NAME AND A.SCHEMA=KU$.SCHEMA_OBJ.OWNER_NAME) AND NOT EXISTS (SELECT 1 FROM SYS.KU$NOEXP_TAB A WHERE A.OBJ_TYPE='SCHEMA' AND A.NAME=KU$.SCHEMA_OBJ.OWNER_NAME);

----- PL/SQL Call Stack -----
object line object
handle number name
c0000000b9a60d98 1050 package body SYS.DBMS_METADATA
c0000000b9a60d98 1256 package body SYS.DBMS_METADATA
c0000000b9a60d98 1583 package body SYS.DBMS_METADATA
c0000000b9a60d98 1891 package body SYS.DBMS_METADATA
c0000000b9a60d98 4224 package body SYS.DBMS_METADATA
c0000000b9ac55a0 2005 package body SYS.KUPW$WORKER
c0000000b9ac55a0 6854 package body SYS.KUPW$WORKER
c0000000b9ac55a0 1259 package body SYS.KUPW$WORKER
c0000000b0534cc0 2 anonymous block



c) ORA-00600 trace file call stack will be similar to :-

kgerinv <- kgeasnmierr <- sqmtbGetSharedData <- qmtLoadSharedData <- qmtbInit <- qmtInit <- qmtLookup <- qmtAddRef <- qmxtgrGetSchemaProp <- qmxtgrCheckMkXML <- qctoxXMLGetTypeInfo <- qctoxmlexval <- qctcopn <- qctsvcti <- qctcopn <- xtyopn <- kokvbwoc <- kokvaroid <- kkmevw <- kkmfcbvw <- kkmfcblo <- kkmpfcbk <- qcsprfro <- qcsprfro_tree <- qcsprfro_tree <- qcspafq <- qcspqb <- qcspqb <- qcsevw <- kkmevw <- kkmfcbvw <- kkmfcblo <- kkmpfcbk <- qcsprfro <- qcsprfro_tree <- qcsprfro_tree <- qcspafq <- qcspqb <- qcspqb <- qcspqb <- qcsevw <- kkmevw <- kkmfcbvw <- kkmfcblo <- kkmpfcbk <- qcsprfro <- qcsprfro_tree <- qcsprfro_tree <- qcspafq <- qcspqb <- qcspqb <- qcspqb <- qcspqb <- qcspqb <- qcspqb <- qcsevw <- kkmevw <- kkmfcbvw <- kkmfcblo <- kkmpfcbk <- qcsprfro <- qcsprfro_tree <- qcsprfro_tree <- qcspafq <- qcspqb <- kkmdrv <- opiSem <- opiDeferredSem <- opitca <- kksFullTypeCheck <- rpiswu2 <- kksSetBindType <- kksfbc <- opiexe <- opipls <- opiodr <- rpidrus <- skgmstack <- rpidru <- rpiswu2 <- rpidrv <- psddr0 <- psdnal <- pevm_OPND <- pfrinstr_OPND <- pfrrun_no_tool <- pfrrun <- plsql_run <- peicnt <- kkxexe <- opiexe <- kpoal8 <- opiodr <- kpoodr <- upirtrc <- kpurcsc <- kpuexecv8 <- kpuexec <- OCIStmtExecute <- kupprdp <- opirip <- opidrv <- sou2o <- opimai_real
<- main <- $START$


d) Environment variables have been reviewed against <Note 351650.1> but are considered to be valid.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms