continue;
}
- if (ar->objs->dsdb_repl_flags & DSDB_REPL_FLAG_PRIORITISE_INCOMING) {
- /*
- * if we compare equal then do an
- * update. This is used when a client
- * asks for a FULL_SYNC, and can be
- * used to recover a corrupt
- * replica.
- *
- * This call is a bit tricky, what we
- * are doing it turning the 'is_newer'
- * call into a 'not is older' by
- * swapping i and j, and negating the
- * outcome.
- */
- cmp = !replmd_replPropertyMetaData1_is_newer(&rmd->ctr.ctr1.array[i],
- &nmd.ctr.ctr1.array[j]);
- } else {
- cmp = replmd_replPropertyMetaData1_is_newer(&nmd.ctr.ctr1.array[j],
- &rmd->ctr.ctr1.array[i]);
- }
+ cmp = replmd_replPropertyMetaData1_new_should_be_taken(
+ ar->objs->dsdb_repl_flags,
+ &nmd.ctr.ctr1.array[j],
+ &rmd->ctr.ctr1.array[i]);
if (cmp) {
/* replace the entry */
nmd.ctr.ctr1.array[j] = rmd->ctr.ctr1.array[i];