Sunday, July 15, 2018

ORA-29913: error in executing ODCIEXTTABLEOPEN callout ORA-29400: data cartridge error

I was doing import of a table and started noticing the below error. Even though the database was same.

Tried different methods but it didn't work. In Oracle support it was mentioned that I may be hitting a bug  and i may have to set NLS_LENGTH_SEMANTICS to char at DB level which was set to byte.

I noticed the table carefully and saw it has a dependency on a Oracle TYPE. 

When i saw its script saw that it was varchar2(20)

CREATE OR REPLACE TYPE ORAUSER1.OFFSET_HDR IS VARRAY(50) of VARCHAR2(20); 


SO I created it manually with an option of "char" in datatype.


SQL> CREATE OR REPLACE TYPE ORAUSER2.OFFSET_HDR IS VARRAY(50) of VARCHAR2(20 char)
  2  /

Type created.

Post that the table was imported successfully.


oracle@linux01:/home/oracle(ORADB)$ impdp / directory=DB_EXP_MOUNT dumpfile=exp_365137_2_%U.dmp logfile=imp_365137_2.log remap_schema=ORAUSER1:ORAUSER2 transform=oid:n parallel=4 cluster=no

Import: Release 12.1.0.2.0 - Production on Thu Jul 12 23:14:07 2018

Copyright (c) 1982, 2014, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, Oracle Label Security,
OLAP, Advanced Analytics, Oracle Database Vault and Real Application Testin
Master table "OPS$oracle"."SYS_IMPORT_FULL_05" successfully loaded/unloaded
Starting "OPS$oracle"."SYS_IMPORT_FULL_05":  /******** directory=DB_EXP_MOUNT dumpfile=exp_365137_2_%U.dmp logfile=imp_365137_2.log remap_schema=ORAUSER1:ORAUSER2 transform=oid:n parallel=4 cluster=no parfile=exclude_procobj.par table_exists_action=truncate
Processing object type TABLE_EXPORT/TABLE/PROCACT_INSTANCE
Processing object type TABLE_EXPORT/TABLE/TABLE
Table "ORAUSER2"."RBX_CURVES" exists and has been truncated. Data will be loaded but all dependent metadata will be skipped due to table_exists_action of truncate
Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
ORA-31693: Table data object "ORAUSER2"."RBX_CURVES" failed to load/unload and is being skipped due to error:
ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
ORA-39779: type "ORAUSER2"."OFFSET_HDR" not found or conversion to latest version is not possible
Processing object type TABLE_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT
Processing object type TABLE_EXPORT/TABLE/INDEX/INDEX
Processing object type TABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
Job "OPS$oracle"."SYS_IMPORT_FULL_05" completed with 1 error(s) at Thu Jul 12 23:14:10 2018 elapsed 0 00:00:02