Field Requirement Mismatch Between Jira Align and Jira Causes Synchronization Failures and Misleading Warning Logs

XMLWordPrintable

      Issue Summary

      When the 'Assignee' field—or any similarly mandatory field—is designated as required by a Jira transition validator but not enforced as required field in Jira Align, updates to issues in Jira Align that omit the assignee (or any other obligatory field left blank), the synchronization fails with 'BadRequest (400)' error.
      This failure occurs because Jira's configuration mandates the population of these fields, like the 'Assignee', for successful issue updates.
      Despite the synchronization failure being due to requirement mismatch, the resulting error is incorrectly logged as a 'Warning' in the system logs. This inaccurate log classification diminishes the perceived urgency of the issue, potentially delaying the identification and resolution of the configuration discrepancy between Jira Align and Jira.

      Steps to Reproduce

      1. Attempt to update an issue in Jira Align that syncs with a Jira issue, ensuring that the 'Assignee' field, required by a Jira validator, is left blank.
      2. Observe the behavior and check the synchronization logs for the error message.

      Expected Results

      The failure to update due to the 'BadRequest (400)' response from Jira when a required field is missing should be logged as an 'Error' to accurately reflect the issue's impact on the synchronization process. And the error should be added to the issue Audit Log.

      Actual Results

      The issue is logged as a 'Warning,' which might not accurately communicate the critical nature of the synchronization failure to administrators, nor added in Audit Log.

      The below exception is thrown in the Splunk logs:

      {
         Level: Warning
         MessageTemplate: APICall
         Properties: { 
           APICallDetails: { 
             JsonErrorMessages: Assignee is required.
      ...
           }
           APIRequestAttemptIndex: 0
           APIRequestMethod: POST
           APIRequestUrl: /incoming/ma/jira/rest/api/2/issue/{issueId}/transitions
           APIResource: rest/api/2/issue/{issueId}/transitions
           APIResponseStatus: Completed
           APIResponseStatusCode: BadRequest
           APIResponseStatusCodeValue: 400
      ...
           JiraProjectKey: [ProjectKey]
      ...
           WorkItemId: [WorkItemId]
           WorkItemType: Feature
         }
         Timestamp: [Timestamp]
      }
       

      Workaround

      Currently, there is no known workaround for this behavior in terms of logging. To avoid the synchronization issue, ensure all required fields, such as 'Assignee,' are filled before attempting to sync updates from Jira Align to Jira

            Assignee:
            Yannick Genin
            Reporter:
            Vasti Marucci
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: