What Happens When Capture or Integrate is Stopped
Question
What happens when the Capture or Integrate process is stopped? Will the replication be impacted at restart?
Environment
HVR 5
Answer
HVR's internal recovery algorithms enable automatic resumption of operations from the point of interruption when a process is terminated and restarted. This ensures data integrity and eliminates the risk of data loss or duplicate changes in case HVR crashes.
However, with log-based capture, retention of the database log files (such as Ingres journal files or Oracle archive files). When the capture job is stopped for a period of time, it needs to revert to the database log files because the transaction log files (redo logs) are already overwritten.
For example, the capture job was stopped yesterday and these files are thrown away each night. The capture job will fail when it is restarted today because it can not find the correct point in the available files. To recover from this, the channel needs to be reinitialized using Initialize followed by a Refresh.
There are two ways of avoiding this:
- Retain the DBMS log files (e.g Oracle archive files) for a couple of days. As long as the transaction files are available, HVR will start capturing them and integrating them. However, if you have already backed them up and removed them from the source, recovering them may be a time-consuming task as you need to reinitialize the channel and refresh your target data.
- Use hvrlogrelease: A script that can be run from the crontab that makes private copies (hard-links) of the files that still might be needed by HVR.