Conflict Resolution

Introduction

Once you've configured your Attachment Flow, your next step will be to review and update your Conflict Resolution Strategy.

When two-way field flow is configured, data conflicts become possible. A data conflict will occur if a field on an artifact is modified on both the source artifact and target artifact during the same Change Detection Interval.  The Change Detection Interval refers to how often Tasktop checks repositories for changes to artifacts. 

The Conflict Resolution Strategy screen allows you to control how data conflicts will be resolved:

  1. Error Upon Conflict: An error will be generated, and no updates will be made to the conflicted field, or to any other fields on the artifact. The error message will notify you that the conflict occurred and will provide steps on how to resolve the conflict. Note that once a conflict is detected, no subsequent updates will be made to the artifact pair until the conflict is resolved. 
  2. Left Collection Dominates: Values from the artifact in the left collection will overwrite the values in the right collection.  
  3. Right Collection Dominates: Values from the artifact in the right collection will overwrite the values in the left collection.

Instructions

To prevent data conflicts, you will need to configure your conflict resolution strategy. This will ensure consistency across your source artifacts and target artifacts if field values of the same artifact are modified.


To select your Conflict Resolution Strategy, click the 'Conflict Resolution Strategy' link on the right side of the Integration configuration screen:

Click 'Conflict Resolution'
This will lead you to the Conflict Resolution Screen, where you can select your desired policy: 

Conflict Resolution Screen

Once selected, click 'Save' and 'Done.'  This will bring you back to the integration configuration screen.

Field-by-Field Conflict Resolution

See Tasktop Editions table to determine if your edition supports Field-by-Field Conflict Resolution functionality.

You can also configure your conflict resolution strategy on a field-by-field basis.

To specify field-by-field conflict resolution, you will follow the same steps listed above; however, instead of selecting a single policy for all values, you can choose individual field values and determine the conflict resolution policy for each value. If you would like to set a default behavior for new field values, you can do so by clicking the header of each column.

(lightbulb) Note: Any new fields added will default to 'Error Upon Conflict' unless the default behavior is changed.


Field-by-Field Conflict Resolution Screen

As you can see in the scenario below, the user has chosen their Jira collection to dominate for the field values 'Priority' and ‘Status’ and their qTest collection to dominate for the field values ‘Summary’ and ‘Description.’

Select Field Values and Choose Dominating Collection
'Summary' and 'Description' Field Values

If any of these field values are updated within the same change detection interval (e.g., ‘Priority’ is set to ‘High’ in Jira and ‘Low’ in qTest), the dominating collection will overwrite the values in the non-dominating collection (i.e., 'Priority' will be updated to 'High' in qTest).

(lightbulb) Note: If a conflict occurs for a field whose policy is set to 'Error Upon Conflict,' all fields will be blocked from being updated on the artifact pair, until the error is resolved. This includes fields whose policy is set to 'Left/Right Collection Dominates'


After you have configured your desired conflict resolution policy, click ‘Save’ and ‘Done’ to save your changes.


Click 'Save' and 'Done'

Next Steps

Once you've selected your Conflict Resolution Strategy, your next step will be to review and update your Change Detection settings for this integration.