Bounded Recovery
Valid for Oracle database only.
Bounded Recovery is a component of the general Extract checkpointing facility. It guarantees an efficient recovery after Extract stops for any reason, planned or unplanned, no matter how many open (uncommitted) transactions there were at the time that Extract stopped, nor how old they were.
Bounded Recovery sets an upper boundary for the maximum amount of time that it would take for Extract to recover to the point where it stopped and then resume normal processing.
The default parent directory is BR
, which is in the
root directory that contains the Oracle GoldenGate installation files.
The default location of the parent BR
directory in Oracle
GoldenGate Microservices Architecture is: $OGG_HOME/var/run/BR
.
BR
requires at least twice BRINTERVAL
log
retention to guarantee a Bounded Recovery. BRINTERVAL
default is 4
hours.
Caution:
Before changing this parameter from its default settings, contact Oracle Support for guidance. Most production environments will not require changes to this parameter. You can, however, specify the directory for the Bounded Recovery checkpoint files without assistance.
For parameter and syntax details, see BR.
Modifying the BR Parameter
Bounded Recovery is enabled by default with a default Bounded Recovery
interval of four hours (as controlled with the BRINTERVAL
option).
This interval should be appropriate for most environments. Do not alter the
BR
parameter without first obtaining guidance from an Oracle
support analyst. Bounded Recovery runtime statistics are available to help Oracle
GoldenGate analysts evaluate the Bounded Recovery usage profile to determine the
proper setting for BRINTERVAL
in the unlikely event that the
default is not sufficient.
If you need to alter BR
, be aware that the Bounded
Recovery interval is a multiple of the regular Extract checkpoint interval. The
Extract checkpoint is controlled by the CHECKPOINTSECS
parameter.
Thus, the BR
parameter controls the ratio of the Bounded Recovery
checkpoint to the regular Extract checkpoint. You might need to change both
parameters, if so advised by your Oracle representative.
What to Do if Extract Abends During Bounded Recovery
If Extract abends in Bounded Recovery, examine the error log to determine the reason. It might be something that is quickly resolved, such as an invalid parameter file or incorrect privileges on the directory that contains the Bounded Recovery files. In such cases, after the problem is fixed, Extract can be restarted with Bounded Recovery in effect.
If the problem is not correctable, attempt to restart Extract with the
BRRESET
option. BRRESET
requires Extract to be
restarted manually. BRRESET
is not a valid parameter in a
.prm
file.
Extract will recover in normal recovery mode and then turn on Bounded Recovery again.
Circumstances that Change Bounded Recovery to Normal Recovery
Most of the time, Extract uses normal recovery and not Bounded Recovery, the exception being the rare circumstance when there is a long running transaction. Certain abnormal circumstances may prevent Extract from switching from Bounded Recovery back to normal recovery mode. These include, but are not limited to, such occurrences as physical corruption of the disk (where persisted data is stored for long-running transactions), inadvertent deletion of the Bounded Recovery checkpoint files, and other actions or events that corrupt the continuity of the environment. There may also be more correctable reasons for failure.
In all but a very few cases, if Bounded Recovery fails during a recovery, Extract switches to normal recovery. After completing the normal recovery, Bounded Recovery is turned on again for runtime.
Bounded Recovery is not invoked under the following circumstances:
-
The Extract start point is altered by CSN or by time.
-
The Extract I/O checkpoint altered.
-
The Extract parameter file is altered during recovery, such as making changes to the
TABLE
specification.
After completion of normal recovery BR is turned on for runtime.
Note:
A Bounded Recovery Checkpoint cannot be used to recover the state of Extract if moved to another system, even with the same database, if the new system is not identical to the original system in all relevant aspects. For example, checkpoint files written on an Oracle 11g Solaris platform cannot be used to recover Extract on an Oracle 11g Linux platform.