Few days ago we ran on RMAN a few deleted of expired archive logs/backups and all was clear under RMAN.
However, when we ran a level 0 backup, we kept receiving failures with this:
RMAN-03009: failure of backup command on c1 channel at 03/02/2026 20:14:16
ORA-19809: limit exceeded for recovery files
ORA-19804: cannot reclaim 68157440 bytes disk space from 2899102924800 bytes limit
continuing other job steps, job failed will not be re-run
channel c1: starting compressed incremental level 0 datafile backup set
We checked and FRA was almost free. Diskgroup usage also almost free. RMAN did not have anything expired. But digging a bit we found V$RECOVERY_FILE_DEST was showing nearly 100% usage and over 10K files (on which none of them existed on disk/asm…):
set linesize 190
col SPACE_LIMIT format 99999999999999
col SPACE_USED format 99999999999999
col SPACE_RECLAIMABLE format 99999999999999
col NAME format a10
SELECT NAME, SPACE_LIMIT, SPACE_USED, SPACE_RECLAIMABLE, NUMBER_OF_FILES
FROM V$RECOVERY_FILE_DEST;
NAME SPACE_LIMIT SPACE_USED SPACE_RECLAIMABLE NUMBER_OF_FILES
---------- --------------- --------------- ----------------- ---------------
+FBRA 2899102924800 2771764903936 0 10933
The fix for this, was to rebuild/re-synchronize/refresh… (whatever you want to call it) running this command:
SYS> alter session set events 'immediate trace name kra_options level 1';
Session altered.
SYS> execute dbms_backup_restore.refreshagedfiles;
PL/SQL procedure successfully completed.
SYS>
After this, space released:
set linesize 190
col SPACE_LIMIT format 99999999999999
col SPACE_USED format 99999999999999
col SPACE_RECLAIMABLE format 99999999999999
col NAME format a10
SELECT NAME, SPACE_LIMIT, SPACE_USED, SPACE_RECLAIMABLE, NUMBER_OF_FILES
FROM V$RECOVERY_FILE_DEST;
NAME SPACE_LIMIT SPACE_USED SPACE_RECLAIMABLE NUMBER_OF_FILES
---------- --------------- --------------- ----------------- ---------------
+FBRA 2899102924800 112742891520 0 214
Comments