The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

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.