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
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