Bi-directional configuration options
When implementing a bi-directional configuration, you must consider the following areas to avoid data integrity issues. These are as follows:
Loop detection
Conflict detection
Conflict resolution
Replicating Oracle sequences
Oracle triggers
Let's take a look at the first potential problem, data looping, and how to detect it.
Loop detection
GoldenGate has built-in loop detection, which is configured through the IGNOREREPLICATES
and GETAPPLOPS
parameters to prevent local transactions from being replicated and causing endless loops. Another solution would be the TRANLOGOPTIONS
EXCLUDEUSER
parameters in the Extract process configuration, effectively blocking the GGS_ADMIN
user on the target system (the user associated with the Replicat process). However, loop detection is only half the battle in a bi-directional environment. We must also consider conflict detection and resolution.
Tip
Truncate table operations cannot be detected by the loop detection scheme. To combat...