JCMA Preflights: Stackoverflow Error Occurs While Pre-Migration Check is Running

XMLWordPrintable

    • 6
    • Severity 3 - Minor
    • 2

      Issue Summary

      When completing pre-migration checks in the Jira Cloud Migration App, some tests are failing for an unknown reason.

      The atlassian-jira-migration.log file is spammed with StackOverflowErrors and therefore the actual root cause is masked. 

      Steps to Reproduce

      1. Login to Jira as an administrator
      2. click on Settings > System > Migrate to Cloud
      3. Select to migration specific components to cloud
      4. Click through the prompts to start the pre-migration-checks

      Expected Results

      All checks are successful and the site can be migrated to Jira Cloud

      Actual Results

      The below exception is thrown in the atlassian-jira-migration.log file for each incomplete migration check.

      /rest/migration/latest/check/de60693db03ffa4636aa147c8d09d8d3ecda980a [jira.migration.preflight.AsyncCheckExecutor] Pre-flight execution error occurred for check type JswLicence
      java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.StackOverflowError
              at java.util.concurrent.FutureTask.report(FutureTask.java:122)
              at java.util.concurrent.FutureTask.get(FutureTask.java:192)
              at com.atlassian.jira.migration.preflight.AsyncCheckExecutor$Companion.extractResult(AsyncCheckExecutor.kt:288)
              at com.atlassian.jira.migration.preflight.AsyncCheckExecutor$Companion.access$extractResult(AsyncCheckExecutor.kt:278)
              at com.atlassian.jira.migration.preflight.AsyncCheckExecutor$persistWhenDone$1.onFailure(AsyncCheckExecutor.kt:183)
              at com.google.common.util.concurrent.Futures$6.run(Futures.java:1310)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
              at java.lang.Thread.run(Thread.java:748)
      Caused by: java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.StackOverflowError
              at java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)
              at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1895)
              at com.atlassian.jira.migration.preflight.PreflightCheckKt.getUsersAndGroups(PreflightCheck.kt:85)
              at com.atlassian.jira.migration.preflight.AbstractLicenceCheck.performCheck(AbstractLicenceCheck.kt:31)
              at com.atlassian.jira.migration.preflight.AsyncCheckExecutor.runCheck(AsyncCheckExecutor.kt:245)
              at com.atlassian.jira.migration.preflight.AsyncCheckExecutor.access$runCheck(AsyncCheckExecutor.kt:41)
              at com.atlassian.jira.migration.preflight.AsyncCheckExecutor$executeChecksListenable$1.invoke$lambda$6$lambda$4(AsyncCheckExecutor.kt:153)
              at java.util.concurrent.FutureTask.run(FutureTask.java:266)
              ... 3 more
      Caused by: java.util.concurrent.ExecutionException: java.lang.StackOverflowError
              at java.util.concurrent.FutureTask.report(FutureTask.java:122)
              at java.util.concurrent.FutureTask.get(FutureTask.java:192)
              at com.atlassian.jira.migration.workers.usersgroups.ScopedUserExtractor$data$2.invoke(ScopedUserExtractor.kt:74)
              at com.atlassian.jira.migration.workers.usersgroups.ScopedUserExtractor$data$2.invoke(ScopedUserExtractor.kt:44)
              at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74)
              at com.atlassian.jira.migration.workers.usersgroups.ScopedUserExtractor.getData(ScopedUserExtractor.kt:44)
              at com.atlassian.jira.migration.workers.usersgroups.ScopedUserExtractor.getAllUsersGroupsWithReferences(ScopedUserExtractor.kt:94)
              at com.atlassian.jira.migration.preflight.UsersGroupsAndCustomerService$getUsersAndGroupsWithReferences$1$1.invoke(UsersGroupsAndCustomerService.kt:181)
              at com.atlassian.jira.migration.preflight.UsersGroupsAndCustomerService$getUsersAndGroupsWithReferences$1$1.invoke(UsersGroupsAndCustomerService.kt:166)
              at com.atlassian.jira.migration.jiraservice.JiraExtensionsKt.wrap(JiraExtensions.kt:19)
              at com.atlassian.jira.migration.preflight.UsersGroupsAndCustomerService.getUsersAndGroupsWithReferences$lambda$2(UsersGroupsAndCustomerService.kt:166)
              at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590)
              ... 3 more
      Caused by: java.lang.StackOverflowError
              at java.util.regex.Pattern$BmpCharProperty.match(Pattern.java:3799)
              at java.util.regex.Pattern$Curly.match0(Pattern.java:4252)
              at java.util.regex.Pattern$Curly.match(Pattern.java:4236)
              at java.util.regex.Pattern$GroupHead.match(Pattern.java:4660)
              at java.util.regex.Pattern$Branch.match(Pattern.java:4606)
              at java.util.regex.Pattern$Branch.match(Pattern.java:4604)
              at java.util.regex.Pattern$BmpCharProperty.match(Pattern.java:3800)
              at java.util.regex.Pattern$Start.match(Pattern.java:3463)
              at java.util.regex.Matcher.search(Matcher.java:1248)
              at java.util.regex.Matcher.find(Matcher.java:664) 

       

      As a result, you cannot click to run the actual Server-to-Cloud migration.

      Workaround

      Currently there is no known workaround for this behavior. A workaround will be added here when available

       

      Plugin Details:

            <key>com.atlassian.jira.migration.jira-migration-plugin</key>
            <name>Jira Cloud Migration Assistant</name>
            <version>1.10.11</version>
            <vendor>Atlassian</vendor>
            <status>ENABLED</status>
            <vendor-url>https://www.atlassian.com/</vendor-url>
            <framework-version>2</framework-version>
      

            Assignee:
            Eamonn Laffey
            Reporter:
            Patrick Turbett
            Votes:
            1 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated: