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:
Oracle Database:
- 11.2.0.4 + PSU 171017 + patch for bug 17030189
- 12.1.0.2 + PSU 171017
- 12.2.0.1 + PSU 171017
Oracle GoldenGate:
- 11.2.1.0.33
- 12.1.2.1.170117
- 12.2.0.1.170221
- 12.3.0.1.0
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.
Hi,
have you any updates from the SR? We are still using Classic Extract as it has lower and more predictable lags in some scenarios
Hi Pavol
Oracle has received a reproduction of this problem. They have confirmed that they can reproduce it in their environment. But as far as I know there is no fix available.
Regards,
Adam
Hi Adam,
is the SR still opened? Did the support engineer open bug to the development? I’ll probably open another one, as we definitely need CLASSIC EXTRACT for some use cases and having RMAN integration is a must in our quite big enterprise.Of course we have to use catalog, using archivelog backups without catalog is not acceptable.
Hi Pavol,
The case is still open. If you want to open the case – my advise is to create the reproduction in the Oracle cloud environment and report this case as cloud issue. Ask them to correct the issue in their own cloud environment. They might be more motivated as this would be a cloud issue.
Regards,
Adam
Hi Adam,
I had an intention to file a ticket for the same issue under my account, as I have quite good escalating process (part of quite group bank group), but changed my mind. Luckily we are not using RMAN delete archivelog command. We are using FRA and try to keep as many archive redologs as possible on local file system (in case of recovery, the MTTR could suffer from restoring logs from tape library). It seems FRA + REGISTER EXTRACT LOGRETENTION is very good combination.If FRA is forced to delete logs which has not been extracted, it complains heavily to alert.log. Otherwise is just deletes logs to make space in FRA as usual.
Many people use archive backup log all + delete archivelog imemdiately after log backup is finished, I think FRA is smarter solution nowadays.
FRA + REGISTER EXTRACT LOGREGTENTION works very well. But you can not use recovery catalog 🙁