Hello,
we have a filer (Windows) where user can put files that have to be processed in the database. These files are either XML or zipped XML.
This filer is mounted on the db server (Oracle Linux 6.7)
Share: zvctransferprod
CIFS Server NetBIOS Name: V-ADAM
Path: /vol/vol2/zv2/transfer/Prod
lix000:
Filesystem Size Used Avail Use% Mounted on
//filer0/zvctransferprod 11G 11G 974M 92% /cifs/zvctransfer
When the files are processed they are copied into a SAV-directory. This is done in chunks in binary mode because of another problem (Metalink Doc ID 317338.1)
Then the files are deleted with utl_file.fremove.
If I look at the filer from Windows Explorer, then the files are gone. But I can still read them from the Linux side
[oracle1@lix000]:/cifs/zvctransfer/Eingang/SEPA # ls -lart | grep apt03
-rw-rw---- 1 oracle1 oinstall 21585 Jul 17 03:34 apt03-sepa.20180717.032514.dta.xml
-rw-rw---- 1 oracle1 oinstall 7940 Aug 17 03:17 apt03-sepa.20180817.031645.dta.xml
-rw-rw---- 1 oracle1 oinstall 2208 Aug 18 09:34 apt03-sepa.20180818.093402.dta.xml
-rw-rw---- 1 oracle1 oinstall 2234 Sep 27 01:40 apt03-sepa.20180927.014002.dta.xml
Therefore they are also visible from the db, the following script shows that they are not empty
DECLARE
v_dateiHandle utl_file.FILE_TYPE;
zeile VARCHAR2(32000);
BEGIN
v_dateiHandle := utl_file.fopen ('ZVC_IMP_SEPA', 'apt03-sepa.20180717.032514.dta.xml', 'R', 32760);
utl_file.get_line (
v_dateiHandle
,zeile
);
dbms_output.put_line(SUBSTR(zeile,1,80));
utl_file.fclose (v_dateiHandle);
END;
/
<?xml version="1.0" encoding="UTF-8"?><Document xmlns="urn:iso:std:iso:20022:tec
PL/SQL-Prozedur erfolgreich abgeschlossen.
Why are they still there and how to get rid of them?
Regards
Marcus
P.S.: I can't reproduce this in test and development :-(
DB version
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning option