Oracle External Table error and ORA-29913
Oracle Database Tips by Burleson Consulting
Question: I'm getting
the ORA-29913 error with the KUP-00552 error when attempting to
query from an external table:
ERROR en l?ea 1:
ORA-29913: error al ejecutar la llamada de ODCIEXTTABLEOPEN
ORA-29400: error de cartucho de datos
KUP-00552: internal XAD package failed to load
ORA-06512: en "SYS.ORACLE_LOADER", l?ea 19
Answer: The root cause for the
error relates to the message: "KUP-00552: internal XAD package failed to load".
There are several causes for the ORA-29913 error, including bug 5172459
(MOSC Note:373168.1), problems with file permissions on the external
ORA-29913: error in executing
Cause: The execution of the specified callout caused an error.
Action: Examine the error messages take appropriate action.
KUP-00552 internal XAD package
failed to load
Cause: An error was encountered while attempting to initialize the
Action: This message should be accompanied by other error messages
indicating the cause of the error.
The most common causes of the ORA-29913 error are that Oracle fails to open OS file that is required. These files might contain output, input, log, discard or bad files. The main reason behind the ORA-29913 error is that an Oracle executable has denied the permission or the file granted the permission or directory itself does not exist for accessing the directory properly.
You can also finds in the ORA-29913 error when Oracle failed to load the table data or write the log files, and the ORA-29913 may indicate problems with table directory or the .log files in the directory.
- Make sure whether the directories have granted the required rights or permission for Oracle to carry out read and write to the directories.
- Execute the special check on ownership and permissions for network directories.
See BUG 5172459 (MOSC
The problem is that the message file for
external tables, not the English version. These steps will address the issue:
1. cd $ORACLE_HOME/rdbms/mesg
2. cp KUP<lang>.msb KUP<lang>.msb.BAK
3. cp kupus.msb KUP<lang>.msb
External table directory error
The ORA-29913 error can also happen in
external tables when you don't grant read and write permissions to the
CREATE OR REPLACE DIRECTORY
extdir AS '/u01/app/oracle./extdir';
GRANT READ ON DIRECTORY extdir TO myowner;
GRANT WRITE ON DIRECTORY extdir TO myowner;
If you like Oracle tuning, see the book "Oracle
Tuning: The Definitive Reference", with 950 pages of tuning tips and
You can buy it direct from the publisher for 30%-off and get
instant access to the code depot of Oracle tuning scripts.