REPL_ADD_CR
Creates conflict resolver for bi-directional transactional replication
None REPL_ADD_CR
(in tbl varchar,
in name_suffix varchar,
in type char,
in order integer,
in class varchar,
in col varchar);
Description
Simple conflict resolvers can be generated by calling this function.
Parameters
tbl –
Name of table for which conflict resolved is required.
name_suffix –
Conflict resolver name suffix.
type –
The resolved type, one of: ('I', 'U' OR 'D').
order –
Resolver order number.
class –
The kind of resolver. Class can be one of the following:
-
'max'
row with maximum value of specified column wins
-
'min'
row with minimum value of specified column wins
-
'ave'
new value of specified column is calculated as:
current_val = (current_val + new_val) / 2
-
'add'
new value of specified column is calculated as:
current_val = current_val + (new_val - old_val)
-
'pub_wins'
-
'custom'
publisher always wins
-
'sub_wins'
subscriber always wins
col –
This should specify the column name if class is not one of 'pub_wins', 'sub_wins' or 'custom'.
Examples
Conflict Resolver
Suppose we have the following table:
create table items(
item_id integer primary key,
name varchar,
count decimal
);
A 'U' conflict resolver that increments items.count in publisher table
can be defined with the following statement:
REPL_ADD_CR('DB.DBA.items', 'count', 'U', 10, 'add', 'count');