Conflicts and Conflict Resolution

Conflicts and conflict resolution is important in database replication. When a conflict occurs it means there is a potential for the data between the source and target databases to be out of sync. This is also referred to as data divergence.

The default rule of conflict is to "retry" the SQL command that is causing the conflict and this is the recommended method. This ensures that the replication is paused so that it can be investigated why the conflict occurred to ensure there is no data divergence between source and target. After the investigation, if it is deemed necessary, then a conflict rule can be set with command SET_CONFLICT_HANDLERS to change the default "retry" behaviour.

Dbvisit Replicate has build in conflict detection and conflict resolution features that assist with ensuring data divergence does not occur.

Dbvisit Replicate offers:

  1. Conflict detection to ensure that when there is a possibility of data divergence, a notification or alert is triggered.
  2. Conflict resolution to ensure that when a conflict occurs, enough information about the conflict is shown so that the conflict can be resolved.
  3. Conflict handling to be able to set predefined rules to say what to do when a conflict occurs.
  4. Listing of conflicts to see the SQL that is causing the conflict with the "LIST CONFLICT" command.

All of the conflict detection, handling, resolution and listing is done from one central place - The Dbvisit Replicate console (dbvrep).

This section discusses all the options and commands around conflict detection and conflict resolution.

Learning more

To understand more about conflicts, it is important to understand The 3 Fundamentals of Oracle Replication