Replication Merge Strategies

You can specify a properties merge strategy for the import procedure. Properties can be merged according to one of the following strategies:

  • Override: The new version is created solely based on data from a data file. Target server changes are ignored and will be overridden.
  • Merge without conflicts: The new version is created as a result of a properties merge from source and target servers. If a property was changed on either the target or source server, the merge result will be successful and the updated property value will be used. However, if conflicting changes were made to the property on the target and source servers, an error will be generated and the import operation will be cancelled.
  • Merge with master priority: This is the same as the merge without conflicts strategy but when a conflict arises, it is resolved using the source server property change.
  • Merge with slave priority: This is the same as the merge without conflicts strategy but when a conflict arises, it is resolved using the target server property change.

Note: Properties merge strategies are used for versioned and non-versioned properties.

Results for each merge strategy using example data cases are shown in the following table. These assume the import has already been performed once from the source server to the target server.

Initial data before second import Properties Merge Strategy and import result on Target Server
(Slave)
on Master (M) on Slave (S) Override Without conflicts Master priority Slave priority

No changes

No changes

No changes

No changes

No changes

No changes

No changes

Delete

Data restored from M

Data deleted

Data deleted

Data deleted

No changes

Edit

Data restored from M

Edited data from S

Edited data from S

Edited data from S

Delete

No changes

Data deleted

Data deleted

Data deleted

Data deleted

Delete

Delete

Data deleted

Data deleted

Data deleted

Data deleted

Delete

Edit

Data deleted

Conflict, stop import

Data deleted

Edited data from S

Edit

No changes

Edited data from M

Edit data from M

Edit data from M

Edited data from M

Edit

Delete

Edited data from M

Conflict, stop import

Edit data from M

Data deleted

Edit

Edit

Edited data from M

Conflict, stop import

Edit data from M

Edited data from S

Add data on M

Add data on S

Only added M data

Added M and S data

Added M and S data

Added M and S data