June 3, 2021
I got ” ORA-29400: data cartridge error ” error in Oracle database.
ORA-29400: data cartridge error
Details of error are as follows.
ORA-29400: data cartridge error Cause: An error has occurred in a data cartridge external procedure. This message will be followed by a second message giving more details about the data cartridge error. Action: See the data cartridge documentation for an explanation of the second error message.
When selecting from an external table , you get the following error:
SQL> select * from sys.empxt;
select * from sys.empxt
*
ERROR at line 1:
ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-04040: file emp1.dat in EMP_DIR not found
ORA-06512: at "SYS.ORACLE_LOADER", line 14
ORA-06512: at line 1
When analyzing the table, you get a similar message:
SQL> execute sys.dbms_stats.gather_table_stats('SYS','EMPXT');
BEGIN sys.dbms_stats.gather_table_stats('SYS','EMPXT'); END;
*
ERROR at line 1:
ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-04040: file emp1.dat in EMP_DIR not found
ORA-06512: at "SYS.DBMS_STATS", line 7161
ORA-06512: at "SYS.DBMS_STATS", line 7174
ORA-06512: at line 1
or:
ORA-20011: Approximate NDV failed: ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-04040: file <file_name> in <directory_name> not found
data cartridge error
This ORA-29400 is related with the error has occurred in a data cartridge external procedure. This message will be
followed by a second message giving more details about the data cartridge error.
See the data cartridge documentation for an explanation of the second error message.
The flat files associated to the external table (emp1.dat, emp2.dat) do not exist in the OS directory pointed by the logical directory EMP_DIR.
Copy/move/recreate the flat file emp1.dat so that it exists in the OS directory pointed by the logical EMP_DIR directory.
SQL> select * from dba_directories ;OWNER DIRECTORY_NAME DIRECTORY_PATH ------ -------------- ----------------------- SYS EMP_DIR /oradata/external_files$ mv /tmp/emp1.dat /oradata/external_files If the problem still persists: SQL> select * from sys.empxt; select * from sys.empxt * ERROR at line 1: ORA-29913: error in executing ODCIEXTTABLEOPEN callout ORA-29400: data cartridge error KUP-04040: file emp2.dat in EMP_DIR not found ORA-06512: at "SYS.ORACLE_LOADER", line 14 ORA-06512: at line 1 then be sure that all OS flat files associated to the external table exist in the OS directory pointed by the logical EMP_DIR directory: SQL> select * from dba_external_locations 2 where table_name='EMPXT';OWNER TABLE_NAME LOCATION DIRECTORY_OWNER DIRECTORY_NAME ----- ------------- -------- --------------- --------------- SYS EMPXT emp1.dat SYS EMP_DIR SYS EMPXT emp2.dat SYS EMP_DIR$ mv /tmp/emp2.dat /oradata/external_files SQL> select * from sys.empxt;EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO ------ ----- -------- ----- --------- ---- ------ ------ 7369 SMITH CLERK 7902 17-DEC-80 150 0 20 7499 ALLEN SALESMAN 7698 20-FEB-81 150 0 30 7521 WARD SALESMAN 7698 22-FEB-81 150 0 30 ...SQL> execute sys.dbms_stats.gather_table_stats('SYS','EMPXT'); PL/SQL procedure successfully completed.
Do you want to learn Oracle Database for Beginners, then read the following articles.
Oracle Tutorial | Oracle Database Tutorials for Beginners ( Junior Oracle DBA )
1,514 views last month, 1 views today
Always check out the original article at http://www.oraclequirks.com for latest comments, fixes and updates.
The pair ORA-29913/ORA-29400 is a sort of catch-all exception embedding KUP-XXXXX error codes that further specify the type of problem encountered with the definition of an external table.
The type of errors encountered spans from syntax errors to missing files or privileges.
For instance, yesterday i got this one when i forgot to specify a keyword in the external table definition.
CREATE TABLE "IMP_BAD_BOXES"
( "TOTE_ID" NUMBER(8,0),
"DEPT" VARCHAR2(2 BYTE),
"CREATED" DATE
)
ORGANIZATION EXTERNAL
( TYPE ORACLE_LOADER
DEFAULT DIRECTORY "IMPORT_DIR"
ACCESS PARAMETERS
(LOGFILE 'BOXES.log'
FIELDS
MISSING FIELD VALUES ARE NULL
REJECT ROWS WITH ALL NULL FIELDS (
CREATED POSITION(1:14) CHAR DATE_FORMAT DATE MASK "YYYYMMDDHH24MISS",
TOTE_ID POSITION(15:22) CHAR,
DEPT POSITION(23:24) CHAR)
)
LOCATION
( 'BOXES.dat')
);select * from IMP_BAD_BOXES;
ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-00554: error encountered while parsing access parameters
KUP-01005: syntax error: found "logfile": expecting one of: "column, ..."
KUP-01007: at line 1 column 1
I marked in red color the position in the statement that caused the run-time error.
Note indeed that when you create the table, no issues are reported, you won’t know if it works until you go live.
So, in the end, this verbose error message was to report that i forgot to specify the keyword RECORDS before LOGFILE.
If you look at the syntax diagram of the ACCESS PARAMETERS clause (ver. 10R1), you’ll notice that there are four distinct sub-clauses.
LOGFILE belongs to the record format sub-clause. This means that you cannot specify any keyword in this sub-clause if you haven’t specified the RECORDS keyword first.
Note also that from a syntax standpoint it is perfectly legitimate to write the RECORDS keyword alone, but if you do not add DELIMITED BY NEWLINE ( or some other specification) then the record terminator will remain undefined, resulting in the following run-time error:
CREATE TABLE "IMP_BAD_BOXES"
( "TOTE_ID" NUMBER(8,0),
"DEPT" VARCHAR2(2 BYTE),
"CREATED" DATE
)
ORGANIZATION EXTERNAL
( TYPE ORACLE_LOADER
DEFAULT DIRECTORY "IMPORT_DIR"
ACCESS PARAMETERS
(RECORDS
LOGFILE 'BOXES.log'
FIELDS
MISSING FIELD VALUES ARE NULL
REJECT ROWS WITH ALL NULL FIELDS (
CREATED POSITION(1:14) CHAR DATE_FORMAT DATE MASK "YYYYMMDDHH24MISS",
TOTE_ID POSITION(15:22) CHAR,
DEPT POSITION(23:24) CHAR)
)
LOCATION
( 'BOXES.dat')
);
ORA-29913: error in executing ODCIEXTTABLEFETCH callout
ORA-29400: data cartridge error
KUP-04038: internal error: unknown record type
So, my original statement must be rewritten as:
CREATE TABLE "IMP_BAD_BOXES"
( "TOTE_ID" NUMBER(8,0),
"DEPT" VARCHAR2(2 BYTE),
"CREATED" DATE
)
ORGANIZATION EXTERNAL
( TYPE ORACLE_LOADER
DEFAULT DIRECTORY "IMPORT_DIR"
ACCESS PARAMETERS
(RECORDS DELIMITED BY NEWLINE
LOGFILE 'BOXES.log'
FIELDS
MISSING FIELD VALUES ARE NULL
REJECT ROWS WITH ALL NULL FIELDS (
CREATED POSITION(1:14) CHAR DATE_FORMAT DATE MASK "YYYYMMDDHH24MISS",
TOTE_ID POSITION(15:22) CHAR,
DEPT POSITION(23:24) CHAR)
)
LOCATION
( 'BOXES.dat')
);
But how do i put the log file in directory other than IMPORT_DIR?
While the official documentation states that one can write a file location as directory:filename, in the reality it turns out that one must enclose the file name in single quotes, otherwise the following syntax error is returned:
CREATE TABLE "IMP_BAD_BOXES"
( "TOTE_ID" NUMBER(8,0),
"DEPT" VARCHAR2(2 BYTE),
"CREATED" DATE
)
ORGANIZATION EXTERNAL
( TYPE ORACLE_LOADER
DEFAULT DIRECTORY "LOG_DIR"
ACCESS PARAMETERS
(RECORDS DELIMITED BY NEWLINE
LOGFILE 'BOXES.log'
FIELDS
MISSING FIELD VALUES ARE NULL
REJECT ROWS WITH ALL NULL FIELDS (
CREATED POSITION(1:14) CHAR DATE_FORMAT DATE MASK "YYYYMMDDHH24MISS",
TOTE_ID POSITION(15:22) CHAR,
DEPT POSITION(23:24) CHAR)
)
LOCATION
( IMPORT_DIR:BOXES.dat)
);
ORA-00905: missing keyword
On the other hand, if you put the directory specifier inside the quotes too, you’ll get the following run-time error:
CREATE TABLE "IMP_BAD_BOXES"
( "TOTE_ID" NUMBER(8,0),
"DEPT" VARCHAR2(2 BYTE),
"CREATED" DATE
)
ORGANIZATION EXTERNAL
( TYPE ORACLE_LOADER
DEFAULT DIRECTORY "LOG_DIR"
ACCESS PARAMETERS
(RECORDS DELIMITED BY NEWLINE
LOGFILE 'BOXES.log'
FIELDS
MISSING FIELD VALUES ARE NULL
REJECT ROWS WITH ALL NULL FIELDS (
CREATED POSITION(1:14) CHAR DATE_FORMAT DATE MASK "YYYYMMDDHH24MISS",
TOTE_ID POSITION(15:22) CHAR,
DEPT POSITION(23:24) CHAR)
)
LOCATION
('IMPORT_DIR:BOXES.dat')
);
ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-04040: file IMPORT_DIR:BOXES.dat in LOG_DIR not found
Finally, here is the correct syntax in blue color:
CREATE TABLE "IMP_BAD_BOXES"
( "TOTE_ID" NUMBER(8,0),
"DEPT" VARCHAR2(2 BYTE),
"CREATED" DATE
)
ORGANIZATION EXTERNAL
( TYPE ORACLE_LOADER
DEFAULT DIRECTORY "LOG_DIR"
ACCESS PARAMETERS
(RECORDS DELIMITED BY NEWLINE
LOGFILE 'BOXES.log'
FIELDS
MISSING FIELD VALUES ARE NULL
REJECT ROWS WITH ALL NULL FIELDS (
CREATED POSITION(1:14) CHAR DATE_FORMAT DATE MASK "YYYYMMDDHH24MISS",
TOTE_ID POSITION(15:22) CHAR,
DEPT POSITION(23:24) CHAR)
)
LOCATION
(IMPORT_DIR:'BOXES.dat')
);
It is up to you to decide whether you want to make the DEFAULT DIRECTORY the place where the source file is read from or the folder where the log files are written to.
Depending on the situation, you may need the appropriate READ and WRITE privileges on it.
As a last note, in case you wonder what would happen if you ALTER the table instead of dropping and re-creating it, you may want to know that it would perfectly possible to execute a statement like this:
ALTER TABLE IMP_BAD_BOXES
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
LOGFILE 'boxes.log');
however this statement will wipe out the previous definition of ACCESS PARAMETERS, because it doesn’t add just a LOGFILE, but replaces the ACCESS PARAMETERS as a whole.
So, don’t forget to include the whole sub-clause again if you plan to use ALTER TABLE, as follows:
ALTER TABLE IMP_BAD_BOXES
ACCESS PARAMETERS
(RECORDS DELIMITED BY NEWLINE
LOGFILE 'BOXES.log'
FIELDS
MISSING FIELD VALUES ARE NULL
REJECT ROWS WITH ALL NULL FIELDS (
CREATED POSITION(1:14) CHAR DATE_FORMAT DATE MASK "YYYYMMDDHH24MISS",
TOTE_ID POSITION(15:22) CHAR,
DEPT POSITION(23:24) CHAR)
);
Finally, let me provide a full-fledged example of external table where every log file goes to its own place:
ALTER TABLE IMP_BAD_BOXES
DEFAULT DIRECTORY IMPORT_DIR
ACCESS PARAMETERS
(RECORDS DELIMITED BY NEWLINE
LOGFILE LOG_DIR:'BOXES.log'
DISCARDFILE DISCARD_DIR:'DISCARDS.log'
BADFILE BAD_DIR:'BAD.log'
FIELDS
MISSING FIELD VALUES ARE NULL
REJECT ROWS WITH ALL NULL FIELDS (
CREATED POSITION(1:14) CHAR DATE_FORMAT DATE MASK "YYYYMMDDHH24MISS",
TOTE_ID POSITION(15:22) CHAR,
DEPT POSITION(23:24) CHAR)
)
LOCATION ('BOXES.dat');
As you can see i specified the DEFAULT DIRECTORY clause without embedding the directory object name in double quotes. You must use double quotes if the directory object name is case sensitive otherwise always use uppercase letters.
Do not use single quotes for the directory object name or you’ll get ORA-22929.
See message translations for ORA-29400 and search additional resources.
ORA-20011 ORA-29913 and ORA-29400 with KUP-04040 Errors from DBMS_STATS.GATHER_STATS_JOB
<<Back to DB Administration Main Page
ORA-20011: Approximate NDV failed: ORA-29913: error in executing ODCIEXTTABLEOPEN callout
DBMS_STATS: GATHER_STATS_JOB encountered errors. Check the trace file.
Errors in file /u01/diag/rdbms/orcl1d/ORCL1D/trace/ORCL1D_j000_24858.trc:
ORA-20011: Approximate NDV failed: ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-04040: file PSG_XVD.csv in DUMP_DATA not found
Tue Sep 10 22:05:06 2019
Cause
The primary cause of this issue is that an OS file for an «external table» existed at some point in time but does not now. However, the database still believes the OS file for the table exists since the dictionary information about the object has not been modified to reflect the change. When DBMS_STATS is run against the table in question, it makes a call out to the external table which fails because the object is not there.
Solution
Clean up the orphaned dictionary entries.
For Temporary Datapump External Table
check out the following document from oracle support and follow the steps accordingly.
Document 10327346.8 Bug 10327346 — DBMS_WORKLOAD_CAPTURE does not drop external tables (causing ORA-20011 from DBMS_STATS)
Document 336014.1 How To Cleanup Orphaned DataPump Jobs In DBA_DATAPUMP_JOBS ?
Other External Table
With cases where specific External tables (be they Demo Schema tables or other tables) are missing, the process for handling them is much the same and can be resolved by following the procedures below. For example, if the additional error is ‘error opening file ../demo/schema/log/ext_1v3.log’, then this indicates that there is a problem opening or locating the log file from the demo schema directory. The implication is that the demo tables have not been cleared up correctly:
Locate the files for these tables in their directory.
undefine owner
undefine table_pattern
select el.table_name, el.owner, dir.directory_path||’/’||dir.directory_name «path»
from dba_external_locations el
, dba_directories dir
where el.table_name like ‘%&&table_pattern%’
and el.owner like ‘%&&owner%’
and el.directory_owner = dir.owner
and el.directory_name = dir.directory_name
order by 1, 2;
It may be that the files still exist but they have just been renamed or re-located.- It may be that the directory path itself does not exists on the server.
If file has been renamed or re-located you can restore back the file to avoid the problem.
If the file has been removed or the directory itself has been deleted then follow either the following steps:
Lock the statistics on these tables by using the following command:
DBMS_STATS.LOCK_TABLE_STATS (‘HR’,’EMP’);
OR
Remove the dictionary object for the external table. DROP TABLE HR.EMP;
More on locking unlocking Stats read here
Обновлено: я решил некоторые проблемы с путями к классам, и теперь я получаю следующую ошибку в файле журнала, который генерируется при выполнении «SELECT *»
UP-04004: error reading file /home/oracle/tweet-dataloc/nosql.dat
KUP-04017: Operating system message: Error 0
KUP-04017: operating system message: /home/oracle/processor/nosql_stream: line 4: java: No such file or directory
Обратите внимание, что этот файл находится ТОЧНО по этому пути и имеет права доступа 777. Конец редактирования
Я создаю внешнюю таблицу, указывающую на базу данных Oracle NoSQL, где данные хранятся в виде пар ключ-значение.
ЗАМЕЧАНИЕ: в этом примере я помещаю каждый каталог в /tmp, к которому могут получить доступ все пользователи на уровне ОС, поэтому мы устраняем любые проблемы, связанные с разрешениями ОС.
Сначала я создаю два виртуальных каталога в SQL Developer, предоставляю разрешения моему пользователю (nosqluser) и, конечно же, создаю внешнюю таблицу:
CREATE DIRECTORY ext_tab AS '/tmp/tweet-dataloc';
CREATE DIRECTORY nosql_bin_dir AS '/tmp/processor';
GRANT READ, WRITE ON DIRECTORY ext_tab TO nosqluser;
GRANT READ, EXECUTE ON DIRECTORY nosql_bin_dir TO nosqluser;
Затем я создаю таблицу следующим образом:
CREATE TABLE "NOSQLUSER"."TWEETS3"
("CREATED_AT" VARCHAR2(80 BYTE),
"ID_STR" VARCHAR2(80 BYTE),
"TEXT" VARCHAR2(200 BYTE),
"NAME" VARCHAR2(80 BYTE),
"LOCATION" VARCHAR2(80 BYTE),
"VERIFIED" VARCHAR2(80 BYTE),
"FOLLOWERS_COUNT" NUMBER,
"FRIENDS_COUNT" NUMBER,
"LISTED_COUNT" NUMBER,
"FAVOURITES_COUNT" NUMBER,
"STATUSES_COUNT" NUMBER,
"CREATED_AT_USER" VARCHAR2(80 BYTE),
"COUNTRY" VARCHAR2(80 BYTE),
"COUNTRY_CODE" VARCHAR2(80 BYTE),
"FULL_NAME_PLACE" VARCHAR2(80 BYTE),
"NAME_PLACE" VARCHAR2(80 BYTE),
"PLACE_TYPE" VARCHAR2(80 BYTE),
"IS_QUOTE_STATUS" VARCHAR2(80 BYTE),
"QUOTE_COUNT" NUMBER,
"REPLY_COUNT" NUMBER,
"FAVORITE_COUNT" NUMBER,
"RETWEET_COUNT" NUMBER,
"FAVORITED" VARCHAR2(80 BYTE),
"RETWEETED" VARCHAR2(80 BYTE),
"FILTER_LEVEL" VARCHAR2(80 BYTE),
"LANG" VARCHAR2(80 BYTE),
"TIMESTAMP_MS" VARCHAR2(80 BYTE)
)
ORGANIZATION EXTERNAL(
TYPE ORACLE_LOADER
DEFAULT DIRECTORY "EXT_TAB2"
ACCESS PARAMETERS(
records delimited by newline
preprocessor nosql_bin_dir2:'nosql_stream'
fields terminated by '|'
missing field values are null
reject rows with all null fields
)
LOCATION ('nosql.dat')
)
REJECT LIMIT UNLIMITED ;
Наконец, я покажу вам, как выглядят мой скрипт nosql_stream и файлы nosql.dat:
/tmp/процессор/nosql_stream:
#!/bin/bash
export PATH=$PATH:/usr/java/latest/bin
export CLASSPATH=/home/oracle/processor/*
java oracle.kv.exttab.Preproc $*
/tmp/tweet-dataloc/nosql.dat:
<config version = "1">
<component name = "publish" type = "params" validate = "true">
<property name = "oracle.kv.exttab.connection.url" value = "jdbc:oracle:thin:/@//relacional:1521/ORCLPDB1.localdomain" type = "STRING"/>
<property name = "oracle.kv.exttab.connection.user" value = "nosqluser" type = "STRING"/>
<property name = "oracle.kv.exttab.tableName" value = "nosqluser.tweets2" type = "STRING"/>
</component>
<component name = "nosql_stream" type = "params" validate = "true">
<property name = "oracle.kv.exttab.externalTableFileNumber" value = "0" type = "INT"/>
<property name = "oracle.kv.exttab.totalExternalTableFiles" value = "1" type = "INT"/>
<property name = "oracle.kv.formatterClass" value = "formatter.TweetFormatter" type = "STRING"/>
<property name = "oracle.kv.hosts" value = "bequi_kvlite_1:5000" type = "STRING"/>
<property name = "oracle.kv.kvstore" value = "kvstore" type = "STRING"/>
</component>
</config>
Этот последний файл создается с помощью функции публикации, выполняемой на стороне базы данных NoSQL. Вы можете следить за процессом здесь.
Теперь эта проблема даже несмотря на то, что записи обрабатываются, как вы можете видеть здесь:
Fri May 10 08:16:34 +0000 2019|1126762942307811331|RT @annknownityy: Future doctor, lawyer, engineer, med tech, nurse, cpa, psychologist, diplomat, biologist, teacher, architect, in the offi?|Sycamore Girl?|Caloocan City, National Capita|false|85|190|0|7804|3131|Sat Mar 21 00:09:46 +0000 2015||||||false|0|0|0|0|false|false|low|en|1557476194346
Fri May 10 08:16:34 +0000 2019|1126762943347953664|University of
Ibadan (UI) School Fees Schedule for 2018/2019 Academic Session ?
http somelink ? Learn
More|OlusegunFapohunda|Earth|false|592|5|3|104|6851|Thu Feb 11
21:49:57 +0000
2010||||||false|0|0|0|0|false|false|low|en|1557476194594Fri May 10 08:16:34 +0000 2019|1126762943498948609|RT @zinadabo1: Pls
we need help, I was just informed that Rotimi Akeredolu increased Ondo
state university tuition from 35k to150k.
Данные недоступны. Когда я делаю «SELECT * FROM nosqluser.tweets3», я получаю следующее:
RA-29913: error executing call from ODCIEXTTABLEFETCH
ORA-29400: error in data cartdrige
KUP-04004: error reading the file /tmp/tweet-dataloc/nosql.dat
Поскольку регистры показаны, я знаю, что база данных NoSQL доступна, а данные отформатированы и читаются правильно. Фактически, до этого момента процесс должен быть завершен, так почему же я не могу получить доступ к своим данным?
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