Chapter 16. Conflict Resolution
Conflict resolution is perhaps the most difficult challenge for the administrator of a replicated environment that uses asynchronous replication. A conflict can arise when an insert, update, or delete to a replicated table occurs at two or more master sites. Oracle detects conflicts at the destination site when attempting to apply the changes. Three different types of conflicts can arise:
- Insert conflicts
An inserted row has a primary key that already exists at the destination site.
- Update conflicts
The pre-update data in a row at the originating site does not match the current data at the destination site.
- Delete conflicts
A deleted row does not exist at the destination site.
Through the DBMS_REPCAT package, Oracle’s advanced replication option gives you tools for identifying and resolving conflicts automatically. The goal is to ensure that data at all master sites converges—that is, all rows end up with identical data at all sites.
The procedures described in this chapter are no substitute for careful application and schema design, and they can’t resolve all conflicts.
Getting Started with DBMS_REPCAT
Use the DBMS_REPCAT package to deal with conflict resolution. As we’ve seen in previous chapters, DBMS_REPCAT is an enormous package whose programs perform many different types of operations. Chapter 14, describes the snapshot-related programs; Chapter 15, describes the programs you call to create and maintain replicated environments. This chapter ...