The oracle OS user isn't able to open the file /lhbase/ora_ext/logging/column_framework_master_list_load.log. This could be because it doesn't have write privileges on the specified directory:
bash-4.1$ pwd
/tmp
bash-4.1$ cat test.txt
test.txt
bash-4.1$ ls -l
total 24
drwxr-xr-x 2 csaxon dba 4096 Nov 9 07:30 hsperfdata_csaxon
drwxr----- 2 emcadm dba 4096 Dec 25 07:32 hsperfdata_emcadm
drwxr-xr-x 2 root root 4096 Jan 8 21:15 hsperfdata_root
-rw------- 1 csaxon dba 443 Jan 9 03:21 krb5cc_730801
dr-xr-xr-x 2 csaxon dba 4096 Jan 9 03:16 test
-rw-r--r-- 1 csaxon dba 10 Jan 9 03:12 test.txt
So I have access to write to /tmp, but not /tmp/test. So if I set the logfile location to /tmp/test, we can't read from the external table:
SQL> create or replace directory tmp as '/tmp';
Directory created.
SQL> create or replace directory tmp_test as '/tmp/test';
Directory created.
SQL> create table t (
x varchar2(10)
) organization external (
default directory tmp
access parameters (
logfile tmp_test:'test.log'
)
location ('test.txt')
); 2 3 4 5 6 7 8 9
Table created.
SQL> select * from t;
select * from t
*
ERROR at line 1:
ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-04001: error opening file /tmp/test/test.log