Uploaded image for project: 'Jira Cloud'
  1. Jira Cloud
  2. JRACLOUD-68680

Some characters in summary break saved filters

    XMLWordPrintable

Details

    Description

      Summary

      When we have a specific set of characters in summary in some issues, it breaks saved filter results containing these issues, showing a blank page when it should show the issue quick view. These characters are invisible when viewing the summary

      Strangely enough, it doesn't happen when we do a regular JQL search, even using the same JQL search as the affected filter, only when opening a saved filter.

      Filters using affected filters (using filter="affected filter") are also affected.

      The characters in summary were decoded to hex and are the following: e2, 80 and a8 together.

      Here's a file with the characters followed by a capital C:
      characters

      Steps to Reproduce

      1. Create an issue with a summary containing the characters:
        • To make it easier, here's a JSON file, formatted to create an issue via REST containing the character.
          create_issue.json
        • Notice that there's a space in 'summary' field. Those are the characters causing problem
        • Update project and issue type ID in JSON file to match an existing project and an issue type that's part of that project's Issue Type Scheme
        • Use this to create an example of issue:
          curl -D- -u user:password -X POST --data @create_issue.json -H "Content-Type: application/json" https://instance.atlassian.net/rest/api/2/issue
          
      2. Create a filter containing the issue and save it (must be saved to replicate)
      3. Open filter in 'Detail View' (you won't replicate otherwise)

      Expected Results

      The filter opens correct.

      Actual Results

      Page shows blank:

      This shows in JS Console:

      Uncaught TypeError: Cannot set property 'table' of undefined
          at Object.JIRA.Issues.GlobalIssueNavCreator.readInitialData (batch.js?agile_global_admin_condition=true&devsummary=true&jag=true&jaguser=true&locale=en-US&nps-not-opted-out=true&sd_operational=true&simplifiedUxOptinAvailable=true:9306)
          at HTMLDocument.<anonymous> (batch.js?agile_global_admin_condition=true&devsummary=true&jag=true&jaguser=true&locale=en-US&nps-not-opted-out=true&sd_operational=true&simplifiedUxOptinAvailable=true:11816)
          at j (batch.js?locale=en-US:76)
          at Object.fireWith (batch.js?locale=en-US:77)
          at Function.ready (batch.js?locale=en
      

      Notes

      Running 'xxd' in a file containing the affected characters followed by a C character (copied from an affected summary), we can see this:

      xxd test6
      00000000: e280 a843 0a                             ...C.
      

      0x43 (67 in decimal) is C in ascii table and 0A (10 in decimal) is line feed (so a new line), so e280 a8 are the invisible characters. In fact, if you create a file with 'C' alone, it shows everything but those 3 characters:

      00000000: 430a                                     C.
      

      There's some public knowledge about it:
      https://stackoverflow.com/questions/10556875/list-of-unicode-characters-that-should-be-filtered-in-output

      You may be able to find summaries with non-ASCII characters (including those), using this:

      select id, summary from jiraissue where not summary ~ ( '^('||
       $$[\09\0A\0D\x20-\x7F]|$$||               -- ASCII
       $$[\09\0A\0D\xA1-\xFF]|$$||               -- ASCII ext
       ')*$' );
      

      Workaround

      Edit all affected issues, by removing the characters.

      Attachments

        1. blank_filter.png
          blank_filter.png
          260 kB
        2. characters
          0.0 kB
        3. create_issue.json
          0.2 kB

        Issue Links

          Activity

            People

              Unassigned Unassigned
              jsilveira Jaime S
              Votes:
              1 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: