JCMA export throws java.lang.NullPointerException. and "We couldn't export Custom Field Config Scheme 'Default Configuration Scheme for Epic Status'."

XMLWordPrintable

    • 21
    • Major

      Issue Summary

      For Jira versions 8.15 and 8.16 when running a migration with JCMA, the migration fails and the log shows

      12021-04-19 09:34:16.918 ERROR TP project-export We couldn't export Custom Field Config Scheme 'Default Configuration Scheme for Epic Status'. Reason: java.lang.NullPointerException.22021-04-19 09:34:17.130 ERROR TP project-export We couldn't export Custom Field Config Scheme 'Default Configuration Scheme for Epic Status'. Reason: java.lang.NullPointerException.
      

      On those versions of Jira, no options for the Epic Status is created - therefore we don’t have a default value for that field based on the exception in the logs.

      Migrations are successful when using Jira versions 8.14 or 8.17-EAP02. It doesn’t appear if you previously had an instance with 8.14 or earlier and upgraded to 8.15.

      As the field is created in Jira Software there’s no way to set it.

      Steps to Reproduce

      1. Create a Project and add an Epic to the Project
      2. Migrate a project with JCMA from a fresh Jira 8.15 or 8.16

      Expected Results

      The Project should migrate without errors.

      Actual Results

      The migration fails.

      The log file contains this java.lang.NullPointerException stack trace. The migration log has the error shown above.

      d9ac4e72f96e: Exporting referenced entities by Custom Field Config Scheme 10207 failed
      java.lang.NullPointerException
      	at com.atlassian.jira.migration.export.core.customfield.CustomFieldConfigSchemeExporter.getDefaultValue(CustomFieldConfigSchemeExporter.kt:153)
      	at com.atlassian.jira.migration.export.core.customfield.CustomFieldConfigSchemeExporter.exportCustomFieldDefaultValue(CustomFieldConfigSchemeExporter.kt:120)
      	at com.atlassian.jira.migration.export.core.customfield.CustomFieldConfigSchemeExporter$childrenActions$3.invoke(CustomFieldConfigSchemeExporter.kt:62)
      	at com.atlassian.jira.migration.export.core.customfield.CustomFieldConfigSchemeExporter$childrenActions$3.invoke(CustomFieldConfigSchemeExporter.kt:28)
      	at com.atlassian.jira.migration.export.framework.ExportService.continueWithChildrenActions(ExportService.kt:219)
      	at com.atlassian.jira.migration.export.framework.ExportService.exportByEntityImpl(ExportService.kt:208)
      	at com.atlassian.jira.migration.export.framework.ExportService.exportOrThrow(ExportService.kt:111)
      	at com.atlassian.jira.migration.export.framework.ExportService.exportOrThrow$default(ExportService.kt:105)
      	at com.atlassian.jira.migration.export.core.customfield.CustomFieldExporter.mapCustomFieldConfigScheme(CustomFieldExporter.kt:77)
      	at com.atlassian.jira.migration.export.core.customfield.CustomFieldExporter$childrenActions$1.invoke(CustomFieldExporter.kt:64)
      	at com.atlassian.jira.migration.export.core.customfield.CustomFieldExporter$childrenActions$1.invoke(CustomFieldExporter.kt:19)
      ...
      

      In Jira 8.14 for the default configuration scheme for epic status has

      Whereas in Jira 8.15 or 8.16 it has

      Workaround

      Remove the Duplicate Default Field Configuration Scheme and assign the default value for the Epic status as 'To do'
      Always back up your data before performing any modifications to the database. If possible, test any alter, insert, update, or delete SQL commands on a staging server first.

      1. Unlock the Epic Status custom field by referring this page.
      2. Open EPIC Status field and remove Duplicated Default Field Configuration Scheme (So project will be using EPIC status global context ) and assign the Default Value as 'To Do'
      3. Lock EPIC status field.
      4. Retry Migration

      The final Epic Status Configuration page should be look like this,

              Assignee:
              Jax Gibb (Inactive)
              Reporter:
              James Richards
              Votes:
              13 Vote for this issue
              Watchers:
              21 Start watching this issue

                Created:
                Updated:
                Resolved: