Prophet::Conflict(3pm)

  analyze_changeset Prophet::ChangeSet
Take a look at a changeset. if there are any conflicts, populate the conflicting_changes array on this object with a set of Prophet::ConflictingChange objects.

  generate_changeset_conflicts
Given a changeset, populates $self->conflicting_changes with all the conflicts that applying that changeset to the target replica would result in.

  _generate_change_conflicts Prophet::Change
Given a change, generates a set of Prophet::ConflictingChange entries.

  _generate_prop_change_conflicts Prophet::Change %hash_of_current_properties
Given a change and the current state of a record, returns an array of Prophet::ConflictingPropChange objects describing conflicts which would occur if the change were applied

  generate_nullification_changeset
In order to record a changeset which might not apply cleanly to the current state of a replica, Prophet generates a nullification changeset. That is, a changeset which sets the state of the replica back to what it needs to be in order to apply the new changeset.

This routine computes a new Prophet::ChangeSet which contains everything needed to nullify the conflicting state of the replica.