In my previous post I have analyzed what happens if you would like to prevent archive logs from deletion so that they can be further processed by Oracle GoldenGate. I have assumed that it would work the same if the RMAN recovery catalog was being used. Lets find out what happens.One would expect that using the RMAN recovery catalog would not change anything. Actually it does. I have run tests with all the most recent versions of:
- 18.104.22.168 + PSU 171017 + patch for bug 17030189
- 22.214.171.124 + PSU 171017
- 126.96.36.199 + PSU 171017
All versions confirm the same. If you want to use Classic Extract (with the REGISTER EXTRACT LOGRETENTION) or Integreated Extract OGG successfully integrates with RMAN. RMAN keeps the archive logs till they are processed by OGG.
But if you use the RMAN recovery catalog functionality Integrated Extract works well. But Classiec Extract will prevent RMAN from deleting a single archive log. The command delete archivelog all causes RMAN to refuse to delete anything. It just says:
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process archived log file name=/opt/fast_recovery_area/DB/archivelog/2018_01_12/o1_mf_1_21_f5j7fnym_.arc thread=1 sequence=50
The message does not reflect the real situation since the archive log might be already processed by OGG. Running the delete archivelog all command while not being connected to RMAN catalog works fine and exactly as expected. Currently the only known workarounds are:
- switch to Integrated Extract
- delete archivelogs unconditionally
- don’t use recovery catalog
There is an SR opened in Oracle with this problem. Lets hope it gets fixed soon.